System, method, apparatus, and computer program product for providing mobile device support services

ABSTRACT

A method is provided for providing mobile device support services. The method may include monitoring a mobile device status. The method may additionally include performing device diagnostics based at least in part on captured deice status data to identify potential faults that may affect mobile device functionality. A corresponding system, apparatus, and computer program product are also provided.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of priority to U.S. ProvisionalApplication No. 61/620,795, which was entitled System, Method,Apparatus, and Computer Program Product for Providing Mobile DeviceSupport Services and was filed Apr. 5, 2012 and is hereby incorporatedby reference in its entirety.

TECHNOLOGICAL FIELD

Embodiments of the present invention relate generally to computertechnology and, more particularly, relate to a system, method,apparatus, and computer program product for providing mobile devicesupport services.

BACKGROUND

As computing technology has continued to advance at a rapid pace, usageof mobile computing devices has become virtually ubiquitous amongstconsumers of all socioeconomic classes. Today's mobile computingdevices, including smartphones, tablet computing devices, and the like,possess power and capabilities previously only available on the mostpowerful personal computers. In particular, many mobile computingplatforms, such as Apple iOS®, Android®, Windows® Phone, Blackberry®,and the like now enable users to install a variety of applications ontheir mobile devices. While in some cases these applications may becurated through application stores, quality and integrity reviews ofapplications available from application stores may not be able to fullyguarantee the safety and interoperability of mobile applications.Further still, in many cases, users may download and installapplications on their mobile devices from sources other than curatedapplication stores. As such, the quality and relative safety of usingsome mobile applications is in question.

Additionally, as mobile computing devices approach the same processingpower and capabilities as personal computers, the phenomenon of taking afactory fresh device that works as advertised and turning it into adevice that performs poorly is occurring with increasing frequency. Inthis regard, users can load too many, badly behaving or maliciousapplications and turn their previously working device into a device thatappears to be failing. As another example, users may install acombination of applications that are not compatible with each other suchthat device performance may be severely impacted. Consequently there isthe emerging tendency for owners of mobile devices to report theirdevices with hardware failures where there is no failure at all.

Manufacturers, carriers, mobile network operators, retailers,wholesalers, and other industry providers often carry the financial andcustomer satisfaction burden resulting from the return of mobile deviceswith “No Fault Found” or NFF. In most cases, the device must be replacedwith a new or refurbished device when the customer is still protected bywarranty, extended warranty, insurance, or the like, even if there hasnot been any hardware failure and the problems experienced by theconsumer result entirely from an application(s) installed on the device.In North America and Europe alone this problem is estimated to costalmost $1 billion dollars. The exorbitant cost of the problem of NFFreturns results in lower profit margins for industry providers, as wellas an increased cost to consumers for mobile devices and mobile deviceservices as a result of industry providers passing on costs of NFFreturns to consumers.

BRIEF SUMMARY OF EXAMPLE EMBODIMENTS

Systems, methods, apparatuses and computer program products are providedherein for providing mobile device support services. In this regard,some example embodiments reduce the occurrence of NFF returns bydiagnosing and providing solutions for non-hardware issues affectingmobile device performance. Some example embodiments additionallyfacilitate the diagnosis of and provide suggested solutions for hardwareissues. The system of some such example embodiments includes a mobiledevice support apparatus configured to provide for remote monitoringand/or diagnostics for mobile devices. As such, the mobile devicesupport apparatus provided by some example embodiments providesproactive device monitoring to give mobile device users advance noticeof and solutions for potential problems identified on their mobiledevices. Additionally or alternatively, the mobile device supportapparatus of some example embodiments provides a portal which users mayaccess to facilitate diagnosis of problems encountered with their mobiledevices.

Some example embodiments provide a mobile application, which may beimplemented on a mobile device. The mobile application of some exampleembodiments provides a stand-alone application configured to diagnoseand provide solutions for issues potentially affecting mobile deviceperformance. Additionally or alternatively, the mobile application ofsome example embodiments is configured to work in conjunction with amobile device support apparatus by monitoring mobile device performanceand conveying monitored data to the mobile device support apparatus tofacilitate remote analysis and diagnosis of any issues potentiallyaffecting mobile device performance.

Some example embodiments further provide for the identification andelevation of issues that cannot be readily diagnosed and/or that cannotreadily be solved without involving a customer service representativeand/or that may require physical device repair. In this regard, suchexample embodiments may facilitate elevation of a support issue to acustomer service center such that a human expert that may be morecapable of solving a problem may assist a mobile device user.Accordingly, some example embodiments use a combination of remotediagnostic tools, knowledge bases and customer service experts allworking in harmony. The system of such example embodiments provides anintelligent engine capable of automatically identifying deviceperformance issues and/or determining the cause of a consumer'scomplaint about their device's behavior and performance and, wherepossible, to automatically repair the device, obviating the need for theconsumer to return the perceived faulty device. Where it is not possibleto repair the device automatically using self-help tools, the system ofsome example embodiments will make recommendations to the user toescalate the session to a human expert that is potentially more capableof solving the problem.

Some example embodiments also provide a backup and restore functionalityfor mobile devices. In this regard, some example embodiments provide amobile device support apparatus configured to maintain a record ofapplications installed on a mobile device and to facilitate restorationof a mobile device to a last known working condition based on the recordand/or to use a record of applications installed on a user's mobiledevice to configure a new or replacement mobile device acquired by theuser. The backup and restore functionality provided by some such exampleembodiments additionally provides for restoration of modifications madeto applications by the user after original application downloads and/orapplication configuration settings made by the user, and/or deviceconfiguration settings made by the user in addition toinstalling/re-installing the applications.

Some example embodiments additionally provide a destruction process thatmay be triggered to lock and/or wipe memory of lost or stolen mobiledevices. Accordingly, such example embodiments facilitate protection ofpersonal data from theft or misuse by unauthorized third parties who mayacquire lost or stolen devices.

The above summary is provided merely for purposes of summarizing someexample embodiments of the invention so as to provide a basicunderstanding of some aspects of the invention. Accordingly, it will beappreciated that the above described example embodiments are merelyexamples and should not be construed to narrow the scope or spirit ofthe disclosure in any way. It will be appreciated that the scope of thedisclosure encompasses many potential embodiments, some of which will befurther described below, in addition to those here summarized.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Having thus described embodiments of the invention in general terms,reference will now be made to the accompanying drawings, which are notnecessarily drawn to scale, and wherein:

FIG. 1 illustrates a system for providing mobile device support servicesaccording to some example embodiments;

FIG. 2 illustrates a block diagram of a mobile device support apparatusin accordance with some example embodiments;

FIG. 3 illustrates a block diagram of a mobile device in accordance withsome example embodiments;

FIG. 4 illustrates an example diagnostics alert interface that may beprovided in accordance with some example embodiments;

FIG. 5 illustrates an example diagnostics and solution user interfacethat may be provided in accordance with some example embodiments;

FIG. 6 illustrates an example user interface for enabling a user toaccess device support services in accordance with some exampleembodiments;

FIGS. 7-10 illustrate example user interfaces for a mobile devicesupport portal provided in accordance with some example embodiments;

FIG. 11 illustrates a flowchart according to an example method forproviding mobile device support services according to some exampleembodiments;

FIG. 12 illustrates a flowchart according to an example method forperforming device diagnostics according to some example embodiments;

FIG. 13 illustrates a flowchart according to an example method forproviding backup and restore services according to some exampleembodiments;

FIG. 14 illustrates a flowchart according to an example method forproviding a support session according to some example embodiments; and

FIG. 15 illustrates a flowchart according to an example method fordetermining a valuation and one or more offers associated with a mobiledevice according to some example embodiments.

DETAILED DESCRIPTION

Some embodiments of the present invention will now be described morefully hereinafter with reference to the accompanying drawings, in whichsome, but not all embodiments of the invention are shown. Indeed,various embodiments of the invention may be embodied in many differentforms and should not be construed as limited to the embodiments setforth herein; rather, these embodiments are provided so that thisdisclosure will satisfy applicable legal requirements. Like referencenumerals refer to like elements throughout.

As used herein, the terms “data,” “content,” “information” and similarterms may be used interchangeably to refer to data capable of beingcaptured, transmitted, received, displayed and/or stored in accordancewith various example embodiments. Thus, use of any such terms should notbe taken to limit the spirit and scope of the disclosure. Further, wherea computing device is described herein to receive data from anothercomputing device, it will be appreciated that the data may be receiveddirectly from the another computing device or may be received indirectlyvia one or more intermediary computing devices, such as, for example,one or more servers, relays, routers, network access points, basestations, and/or the like. Similarly, where a computing device isdescribed herein to send data to another computing device, it will beappreciated that the data may be sent directly to the another computingdevice or may be sent indirectly via one or more intermediary computingdevices, such as, for example, one or more servers, relays, routers,network access points, base stations, and/or the like.

System Overview

FIG. 1 illustrates a system 100 for providing mobile device supportservices according to some example embodiments. It will be appreciatedthat the system 100 as well as the illustrations in other figures areeach provided as an example of an embodiment(s) and should not beconstrued to narrow the scope or spirit of the disclosure in any way. Inthis regard, the scope of the disclosure encompasses many potentialembodiments in addition to those illustrated and described herein. Assuch, while FIG. 1 illustrates one example of a configuration of asystem for providing mobile device support services, numerous otherconfigurations may also be used to implement embodiments of the presentinvention.

The system 100 may include a mobile device support apparatus 102, whichmay be configured to provide mobile device support services to one ormore mobile devices 104 via the network 106 in accordance with one ormore example embodiments disclosed herein. The mobile device supportapparatus 102 may comprise one or more servers, a server cluster, one ormore network nodes, a cloud computing infrastructure, one or moredesktop computers, one or more laptop computers, some combinationthereof, or the like.

As illustrated in FIG. 1, the system 100 may include one or more mobiledevices 104. While three such mobile devices 104 are illustrated in FIG.1, it will be appreciated that this illustration is by way of example,and not by way of limitation, as the system 100 may include additionalor fewer mobile devices 104. A mobile device 104 may be embodied as anymobile computing device, such as by way of non-limiting example, acellular phone, smart phone, mobile communication device, tabletcomputing device, digital camera/camcorder, mobile audio/video player,mobile digital video recorder, any combination thereof, or the like.

In various example embodiments, a mobile device 104 may be configured toconnect to the network 106 via a variety of wireless and/or wirelineconnections. For example, a mobile device 104 may be configured toaccess the network 106 via a cellular connection, wireless local areanetwork connection, Ethernet connection, and/or the like. As such, thenetwork 106 may comprise a wireline network, wireless network (e.g., acellular network, wireless local area network, wireless wide areanetwork, some combination thereof, or the like), or a combinationthereof, and in some example embodiments comprises at least a portion ofthe Internet.

In some example embodiments, the mobile device support apparatus 102 anda mobile device 104 may be configured to communicate with each otherover the network 106 to facilitate provision by the mobile devicesupport apparatus 102 of mobile device support services to the mobiledevice 104 in accordance with one or more example embodiments. Themobile device support apparatus 102 may, for example, be maintained by awireless carrier, mobile device manufacturer, mobile device warrantyprovider, mobile device insurance provider, and/or other entity that mayprovide support services to mobile device users.

The system 100 of some example embodiments may include one or more userterminals 108. A user terminal 108 may comprise any computing devicethat may be used to communicate with the mobile device support apparatus102 by way of the network 106. In this regard, in some exampleembodiments, a user terminal 108 may be used to access a website and/orother support portal that may be delivered remotely by the mobile devicesupport apparatus 102 of some example embodiments to a user terminal 108over the network 106 to enable a user to access support services for amobile device 104. By way of non-limiting example, a user terminal 108may comprise a desktop computer, laptop computer, mobile device,workstation, or the like.

In some example embodiments, the system 100 may additionally comprise acustomer service center apparatus 110. The customer service centerapparatus may comprise any computing device or plurality of computingdevices that may be used by a wireless carrier, mobile devicemanufacturer, mobile device warranty provider, mobile device insuranceprovider, and/or other entity to facilitate the provision of livecustomer service to a mobile device user. As an example, the customerservice center apparatus 110 may be implemented at a call center orother support center that may be staffed with one or more customerservice representatives that may communicate with mobile device usersvia telephone call, voice over internet protocol (VoIP), web chat, textchat, email, video call, and/or other communication technology that maybe used to facilitate communication between a mobile device user and acustomer service representative.

In some embodiments including a customer service center apparatus 110,the mobile device support apparatus 102 may be configured to communicatewith the customer service center apparatus 110, such as via the network106. As another example, in some example embodiments, the mobile devicesupport apparatus 102 and customer service center apparatus 110 may beco-located on a common computing device or group of computing devicessuch that the mobile device support apparatus 102 and customer servicecenter apparatus 110 may directly communicate with each other. Inembodiments including a customer service center apparatus 110, themobile device support apparatus 102 may be configured to communicatewith the customer service center apparatus 110 in order to escalate adevice support session to a human customer service representative,provide a record of previously gathered device diagnostic informationfor a mobile device 104 to the customer service center apparatus 110such that it is accessible via a customer service representative duringa live device support session, provide a record of corrective actionsalready performed by a user of the mobile device 104, and/or the like.The customer service center apparatus 110 of some example embodimentsmay be further configured to communicate with a mobile device 104 and/oruser terminal 108 to facilitate communication between a customer servicerepresentative and a mobile device user during a live device supportsession.

FIG. 2 illustrates a block diagram of a mobile device support apparatus102 in accordance with some example embodiments. However, it should benoted that the components, devices or elements illustrated in anddescribed with respect to FIG. 2 below may not be mandatory and thussome may be omitted in certain embodiments. Additionally, someembodiments may include further or different components, devices orelements beyond those illustrated in and described with respect to FIG.2.

Referring now to FIG. 2, the mobile device support apparatus 102 mayinclude or otherwise be in communication with processing circuitry 210that is configurable to perform actions in accordance with one or moreexample embodiments disclosed herein. In this regard, the processingcircuitry 210 may be configured to perform and/or control performance ofone or more functionalities of the mobile device support apparatus 102in accordance with various example embodiments, and thus may providemeans for performing functionalities of the mobile device supportapparatus 102 in accordance with various example embodiments. Theprocessing circuitry 210 may be configured to perform data processing,application execution and/or other processing and management servicesaccording to one or more example embodiments. In some embodiments, themobile device support apparatus 102 or a portion(s) or component(s)thereof, such as the processing circuitry 210, may be embodied as orcomprise a chip or chip set. In other words, the mobile device supportapparatus 102 or the processing circuitry 210 may comprise one or morephysical packages (e.g., chips) including materials, components and/orwires on a structural assembly (e.g., a baseboard). The structuralassembly may provide physical strength, conservation of size, and/orlimitation of electrical interaction for component circuitry includedthereon. The mobile device support apparatus 102 or the processingcircuitry 210 may therefore, in some cases, be configured to implementan embodiment of the invention on a single chip or as a single “systemon a chip.” As such, in some cases, a chip or chipset may constitutemeans for performing one or more operations for providing thefunctionalities described herein.

In some example embodiments, the processing circuitry 210 may include aprocessor 212 and, in some embodiments, such as that illustrated in FIG.2, may further include memory 214. The processing circuitry 210 may bein communication with or otherwise control a communication interface 218and/or a support services controller 220. As such, the processingcircuitry 210 may be embodied as a circuit chip (e.g., an integratedcircuit chip) configured (e.g., with hardware, software or a combinationof hardware and software) to perform operations described herein.

The processor 212 may be embodied in a number of different ways. Forexample, the processor 212 may be embodied as various processing meanssuch as one or more of a microprocessor or other processing element, acoprocessor, a controller or various other computing or processingdevices including integrated circuits such as, for example, an ASIC(application specific integrated circuit), an FPGA (field programmablegate array), or the like. Although illustrated as a single processor, itwill be appreciated that the processor 212 may comprise a plurality ofprocessors. The plurality of processors may be in operativecommunication with each other and may be collectively configured toperform one or more functionalities of the mobile device supportapparatus 102 as described herein. The plurality of processors may beembodied on a single computing device or distributed across a pluralityof computing devices collectively configured to function as the mobiledevice support apparatus 102. In some example embodiments, the processor212 may be configured to execute instructions stored in the memory 214or otherwise accessible to the processor 212. As such, whetherconfigured by hardware or by a combination of hardware and software, theprocessor 212 may represent an entity (e.g., physically embodied incircuitry—in the form of processing circuitry 210) capable of performingoperations according to embodiments of the present invention whileconfigured accordingly. Thus, for example, when the processor 212 isembodied as an ASIC, FPGA or the like, the processor 212 may bespecifically configured hardware for conducting the operations describedherein. Alternatively, as another example, when the processor 212 isembodied as an executor of software instructions, the instructions mayspecifically configure the processor 212 to perform one or moreoperations described herein.

In some example embodiments, the memory 214 may include one or morenon-transitory memory devices such as, for example, volatile and/ornon-volatile memory that may be either fixed or removable. In thisregard, the memory 214 may comprise a non-transitory computer-readablestorage medium. It will be appreciated that while the memory 214 isillustrated as a single memory, the memory 214 may comprise a pluralityof memories. The plurality of memories may be embodied on a singlecomputing device or may be distributed across a plurality of computingdevices collectively configured to function as the mobile device supportapparatus 102. The memory 214 may be configured to store information,data, applications, instructions and/or the like for enabling the mobiledevice support apparatus 102 to carry out various functions inaccordance with one or more example embodiments. For example, the memory214 may be configured to buffer input data for processing by theprocessor 212. Additionally or alternatively, the memory 214 may beconfigured to store instructions for execution by the processor 212. Asyet another alternative, the memory 214 may include one or moredatabases that may store a variety of files, contents or data sets.Among the contents of the memory 214, applications may be stored forexecution by the processor 212 in order to carry out the functionalityassociated with each respective application. In some cases, the memory214 may be in communication with one or more of the processor 212,communication interface 218, or support services controller 220 via abus(es) for passing information among components of the mobile devicesupport apparatus 102.

The communication interface 218 may include one or more interfacemechanisms for enabling communication with other devices and/ornetworks. In some cases, the communication interface 218 may be anymeans such as a device or circuitry embodied in either hardware, or acombination of hardware and software that is configured to receiveand/or transmit data from/to a network and/or any other device or modulein communication with the processing circuitry 210. By way of example,the communication interface 218 may be configured to enable the mobiledevice support apparatus 102 to communicate with a mobile device(s) 104,user terminal(s) 108, customer service center apparatus 110, and/orother computing device via the network 106. Accordingly, thecommunication interface 218 may, for example, include an antenna (ormultiple antennas) and supporting hardware and/or software for enablingcommunications with a wireless communication network (e.g., a wirelesslocal area network, cellular network, and/or the like) and/or acommunication modem or other hardware/software for supportingcommunication via cable, digital subscriber line (DSL), universal serialbus (USB), Ethernet or other methods.

In some example embodiments, the processor 212 (or the processingcircuitry 210) may be embodied as, include, or otherwise control asupport services controller 220. As such, the support servicescontroller 220 may be embodied as various means, such as circuitry,hardware, a computer program product comprising computer readableprogram instructions stored on a computer readable medium (for example,the memory 214) and executed by a processing device (for example, theprocessor 212), or some combination thereof. The support servicescontroller 220 may be capable of communication with one or more of thememory 214 or communication interface 218 to access, receive, and/orsend data as may be needed to perform one or more of the functionalitiesof the support services controller 220 as described herein.

FIG. 3 illustrates a block diagram of a mobile device 104 in accordancewith some example embodiments. However, it should be noted that thecomponents, devices or elements illustrated in and described withrespect to FIG. 3 below may not be mandatory and thus some may beomitted in certain embodiments. Additionally, some embodiments mayinclude further or different components, devices or elements beyondthose illustrated in and described with respect to FIG. 3.

Referring now to FIG. 3, the mobile device 104 may include or otherwisebe in communication with processing circuitry 310 that is configurableto perform actions in accordance with one or more example embodimentsdisclosed herein. In this regard, the processing circuitry 310 may beconfigured to perform and/or control performance of one or morefunctionalities of the mobile device 104 in accordance with variousexample embodiments, and thus may provide means for performingfunctionalities of the mobile device 104 in accordance with variousexample embodiments. The processing circuitry 310 may be configured toperform data processing, application execution and/or other processingand management services according to one or more example embodiments. Insome embodiments, the mobile device 104 or a portion(s) or component(s)thereof, such as the processing circuitry 310, may be embodied as orcomprise a chip or chip set. In other words, the mobile device 104 orthe processing circuitry 310 may comprise one or more physical packages(e.g., chips) including materials, components and/or wires on astructural assembly (e.g., a baseboard). The structural assembly mayprovide physical strength, conservation of size, and/or limitation ofelectrical interaction for component circuitry included thereon. Themobile device 104 or the processing circuitry 310 may therefore, in somecases, be configured to implement an embodiment of the invention on asingle chip or as a single “system on a chip.” As such, in some cases, achip or chipset may constitute means for performing one or moreoperations for providing the functionalities described herein.

In some example embodiments, the processing circuitry 310 may include aprocessor 312 and, in some embodiments, such as that illustrated in FIG.3, may further include memory 314. The processing circuitry 310 may bein communication with or otherwise control a user interface 316, acommunication interface 318, and/or a mobile application controller 320.As such, the processing circuitry 310 may be embodied as a circuit chip(e.g., an integrated circuit chip) configured (e.g., with hardware,software or a combination of hardware and software) to performoperations described herein.

The processor 312 may be embodied in a number of different ways. Forexample, the processor 312 may be embodied as various processing meanssuch as one or more of a microprocessor or other processing element, acoprocessor, a controller or various other computing or processingdevices including integrated circuits such as, for example, an ASIC(application specific integrated circuit), an FPGA (field programmablegate array), or the like. Although illustrated as a single processor, itwill be appreciated that the processor 312 may comprise a plurality ofprocessors. The plurality of processors may be in operativecommunication with each other and may be collectively configured toperform one or more functionalities of the mobile device 104 asdescribed herein. In some example embodiments, the processor 312 may beconfigured to execute instructions stored in the memory 314 or otherwiseaccessible to the processor 312. As such, whether configured by hardwareor by a combination of hardware and software, the processor 312 mayrepresent an entity (e.g., physically embodied in circuitry—in the formof processing circuitry 310) capable of performing operations accordingto embodiments of the present invention while configured accordingly.Thus, for example, when the processor 312 is embodied as an ASIC, FPGAor the like, the processor 312 may be specifically configured hardwarefor conducting the operations described herein. Alternatively, asanother example, when the processor 312 is embodied as an executor ofsoftware instructions, the instructions may specifically configure theprocessor 312 to perform one or more operations described herein.

In some example embodiments, the memory 314 may include one or morenon-transitory memory devices such as, for example, volatile and/ornon-volatile memory that may be either fixed or removable. In thisregard, the memory 314 may comprise a non-transitory computer-readablestorage medium. It will be appreciated that while the memory 314 isillustrated as a single memory, the memory 314 may comprise a pluralityof memories. The memory 314 may be configured to store information,data, applications, instructions and/or the like for enabling the mobiledevice 104 to carry out various functions in accordance with one or moreexample embodiments. For example, the memory 314 may be configured tobuffer input data for processing by the processor 312. Additionally oralternatively, the memory 314 may be configured to store instructionsfor execution by the processor 312. As yet another alternative, thememory 314 may include one or more databases that may store a variety offiles, contents or data sets. Among the contents of the memory 314,applications may be stored for execution by the processor 312 in orderto carry out the functionality associated with each respectiveapplication. In some cases, the memory 314 may be in communication withone or more of the processor 312, user interface 316, communicationinterface 318, or mobile application controller 320 via a bus(es) forpassing information among components of the mobile device 104.

The user interface 316 may be in communication with the processingcircuitry 310 to receive an indication of a user input at the userinterface 316 and/or to provide an audible, visual, mechanical or otheroutput to the user. As such, the user interface 316 may include, forexample, a keyboard, a mouse, a joystick, a display, a touch screendisplay, a microphone, a speaker, and/or other input/output mechanisms.As such, the user interface 316 may, in some example embodiments,provide means for a user to access and interact with mobile devicesupport services provided by the mobile device support apparatus 102 inaccordance with various example embodiments.

The communication interface 318 may include one or more interfacemechanisms for enabling communication with other devices and/ornetworks. In some cases, the communication interface 318 may be anymeans such as a device or circuitry embodied in either hardware, or acombination of hardware and software that is configured to receiveand/or transmit data from/to a network and/or any other device or modulein communication with the processing circuitry 310. By way of example,the communication interface 318 may be configured to enable the mobiledevice 104 to communicate with the mobile device support apparatus 102and/or other computing device via the network 106. Accordingly, thecommunication interface 318 may, for example, include an antenna (ormultiple antennas) and supporting hardware and/or software for enablingcommunications with a wireless communication network (e.g., a wirelesslocal area network, cellular network, and/or the like) and/or acommunication modem or other hardware/software for supportingcommunication via cable, digital subscriber line (DSL), universal serialbus (USB), Ethernet or other methods.

In some example embodiments, the processor 312 (or the processingcircuitry 310) may be embodied as, include, or otherwise control amobile application controller 320. As such, the mobile applicationcontroller 320 may be embodied as various means, such as circuitry,hardware, a computer program product comprising computer readableprogram instructions stored on a computer readable medium (for example,the memory 314) and executed by a processing device (for example, theprocessor 312), or some combination thereof. The mobile applicationcontroller 320 may be capable of communication with one or more of thememory 314, user interface 316, or communication interface 318 toaccess, receive, and/or send data as may be needed to perform one ormore of the functionalities of the mobile application controller 320 asdescribed herein. In accordance with some example embodiments, themobile application controller 320 may provide means for implementing andcontrolling functionality of a mobile application that may be configuredto provide mobile device support services, run diagnostics on the mobiledevice 104, and/or interact with the mobile device support apparatus 102and/or customer service center apparatus 110 in accordance with variousexample embodiments.

Having now generally described several embodiments of the system 100,mobile device support services that may be provided by the system 100will now be described in accordance with several example embodiments.

Diagnostic and Repair Services

Some example embodiments offer mobile device diagnostic and repairservices facilitating the reduction in occurrence of NFF returns. Inaccordance with various example embodiments, these services may, forexample, be provided by the mobile device support apparatus 102 underthe control of the support services controller 220, by a mobileapplication operating under the control of the mobile applicationcontroller 320, and/or some combination thereof.

In some example embodiments, a user may register, or opt-in , toreceiving mobile device support services, such as may be provided inaccordance with some example embodiments. Registration in some exampleembodiments may, for example, comprise a proactive user action ofregistering via a web portal, such as may be provided by the mobiledevice support apparatus 102 and accessible via a mobile device 104and/or via a user terminal 108, registering via a mobile applicationthat may be implemented on the mobile device 104, and/or the like. Asanother example, in some example embodiments, registration may occurautomatically responsive to user enrollment in a device protection planfor a mobile device 104, purchase of a device warranty for the mobiledevice 104, purchase of the mobile device 104, and/or the like.

In some embodiments, registration information may be provided by theuser and/or otherwise determined during the registration process, suchas by the support services controller 220 and/or mobile applicationcontroller 320. This registration information may comprise informationenabling and/or otherwise configuring the provision of device supportservices, such as diagnostic and repair services, in accordance withvarious example embodiments. The registration information may, forexample, include information about the mobile device 104, such as amanufacturer of the mobile device 104, a model of the mobile device 104,an operating system running on the mobile device 104, and/or the like.Additionally or alternatively, the registration information may compriseuser consent for the performance of one or more services, such asmonitoring of a status of the mobile device 104, collection of statusdata captured through the monitoring, and/or the like. The registrationinformation may additionally or alternatively comprise configurationsettings for governing the provision of device support services. Thesupport services controller 220 and/or mobile application controller 320may be configured to determine the registration information, and may beconfigured to provide one or more device support services disclosedherein in accordance with the registration information. The user may beenabled to later update registration information, such as configurationsettings and/or permissions that may govern the provision of devicesupport services, following registration.

In some example embodiments, the mobile application controller 320 maybe configured to monitor a status of a mobile device 104 to collectdevice status data related to a status of the mobile device 104. Themonitoring may, for example, be performed periodically, on an ongoingbasis, aperiodically, in accordance with a schedule, on demand, and/orthe like. In this regard, the mobile application controller 320 may beconfigured to proactively to automatically monitor a status of themobile device 104 and/or may be configured to monitor a status of themobile device 104 on-demand in response to a user request. In someexample embodiments, monitoring by the mobile application controller 320may be performed under the control of and/or with the assistance of themobile device support apparatus 102. Monitoring may, for example, beperformed with the assistance of one or more sensors that may beimplemented on the mobile device 104 and/or that may otherwise bequeried by the mobile device 104. By way of non-limiting example, thesesensor may include a touch screen sensor, key actuation sensor (e.g.,for a keypad/keyboard), Global Positioning System (GPS) sensor,accelerometer, battery level sensor, battery capacitance sensor, batterytemperature sensor, network signal strength sensor, and/or the like.

In some example embodiments, monitoring of a status of a mobile device104 may be performed in accordance with configuration settings that maybe user configured and/or automatically defined, such as duringregistration for device support services. For example, configurationsettings may define the type(s) of device status data captured in thecourse of the monitoring. In this regard, in some example embodiments,monitoring may be tailored to capture only designated device statusdata. As another example, configuration settings may guide the timing ofstatus monitoring, frequency of status monitoring, and/or the like. Insome example embodiments, monitoring may be configured automatically,such as through heuristic analysis, and/or in accordance withuser-defined configuration settings to occur during periods of lowutilization of the mobile device 104, such as overnight. In this regard,potential strain on or conflict with usage of device resources duringperiods in which the mobile device 104 is being utilized may be reduced,or even eliminated, by avoiding performance of device monitoringconcurrently with user utilization of the mobile device and/or duringperiods in which device resources may be used by other applications. Insome example embodiments, monitoring may be configured to be performedduring periods in which the mobile device 104 is connected to anexternal power resource, such as when a battery of the mobile device 104may be charging, and/or when there is at least a threshold amount ofpower remaining in a battery that may power the mobile device 104 ofsome example embodiments.

In various example embodiments, a variety of device status data may becaptured through monitoring of the status of a mobile device 104. As oneexample, an application profile may be determined, which may include theapplications installed on the mobile device 104, configuration settingsfor installed applications, processor and/or memory usage of installedapplications, crash logs, execution and/or usage data, and/or the like.In this regard, an application profile may provide a snapshot of theapplications installed on a mobile device 104 and/or a state thereof ata given point in time. In some example embodiments, a series ofapplication profiles may be determined over time, and those applicationprofiles may be maintained, such as in memory 214 and/or in memory 314.The series of application profiles may be used to facilitate devicediagnostics, such as to identify a newly installed application, amodified application setting, and/or the like that may have impacteddevice performance. As another example, an application profile may beused to facilitate restoration of a mobile device to a last knownworking or other previous state, as will be described further hereinbelow in accordance with some example embodiments.

In some example embodiments, device status data that may be capturedthrough monitoring of a device status may comprise data regardinghardware implemented on the mobile device 104. For example, informationmay be captured regarding hardware usage, such as, by way ofnon-limiting example, memory usage, processor usage, and/or the like.Hardware usage data may include a snapshot(s) of hardware usageillustrating a usage at one or more points in time and/or a usage trendillustrating usage over a period of time. As a further example, capturedstatus information may include information on power consumption, batteryusage, battery, battery discharge rates, and/or the like, which may, forexample, define an instantaneous rate of power consumption,instantaneous rate of battery discharge, a rate of power consumptionover time, a rate of battery discharge over time, and/or the like. Asanother example, information may be captured regarding hardware health,such as information regarding a health of a battery, memory device,device sensors, accelerometer, Global Positioning Service sensor, and/orother hardware that may be implemented on a mobile device 104.Information regarding hardware health may, for example, include hardwaretest results that may provide information indicative of hardware health.

In accordance with some example embodiments, captured device status datamay additionally or alternatively include information regarding devicesettings, system log contents, application log contents, and/or otherdata elements. As yet another example, captured device status data mayinclude information on usage of a mobile device 104. For example,information regarding network utilization (e.g., utilization of thenetwork 106), call history information, text message historyinformation, data regarding a quantity of data transferred over time,and/or the like may be captured through device status monitoring inaccordance with some example embodiments. As a still further example,captured device status data may include: information regarding radiosignals associated with, e.g., transmitted or received by, the mobiledevice; information regarding the occurrence of events associated withthe mobile device; information regarding battery usage of the mobiledevice; information regarding overall or per app data usage of themobile device; information regarding corrective actions performed by theuser, such as support content accessed by the user and/or correctiveactions performed by the user.

In some example embodiments, captured device status data may be at leasttemporarily maintained locally on a mobile device 104, such as in memory314. Additionally or alternatively, in some example embodiments, atleast a portion of captured device status data for a mobile device 104may be conveyed to the mobile device support apparatus 102, where it maybe maintained in memory 214. Device status data conveyed to the mobiledevice support apparatus 102 may be pre-processed in some exampleembodiments to eliminate personal data and/or other sensitive data, suchas may particularly identify a user. In embodiments in which devicestatus data is maintained at the mobile device support apparatus 102,the device status data may be maintained in a record, such as database,in association with a respective mobile device 104 from which it wascaptured, a device user, and/or other identifier that may be used tofacilitate correlation of device status data with a device and/or deviceuser.

In embodiments in which captured device status data is conveyed to themobile device support apparatus 102, the device status data may betransferred in accordance with configuration settings that may define atime period during which the data is sent to the mobile device supportapparatus 102. For example, device status data may be provided to themobile device support apparatus 102 during periods of low utilization ofthe mobile device 104, such as overnight. As another example, devicestatus data may be provided to the mobile device support apparatus 102during periods in which the mobile device 104 is connected to anexternal power resource, such as when a battery of the mobile device 104may be charging, and/or when there is at least a threshold amount ofpower remaining in a battery that may power the mobile device 104 ofsome example embodiments. As still a further example, device status datamay be provided to the mobile device support apparatus 102 duringperiods of lower usage of the network 106 so as to manage the data loadon the network 106. As yet another example, in embodiments in which anoperator of the network 106 may charge for data transfer, device statusdata may be provided to the mobile device support apparatus 102 duringperiods of lower data rates.

In some example embodiments, such as in embodiments in which a userregisters to receive device support services, periodic messagesindicative of the types of device status data captured throughmonitoring to ensure that the user is aware of and agrees to the capturesettings. The periodic messages may include a re-opt-in option so that auser may reconfirm his or her agreement and/or may provide an option toadjust configuration settings to tailor status monitoring and devicestatus data capture settings to his or her preference.

In some example embodiments, captured device status data may be used toperform device diagnostics for a mobile device 104 in order to identifypotential faults that may affect the mobile device 104. The devicediagnostics may, for example, be used to determine a predicted faultthat has a non-zero probability of affecting the device in the future,or a present fault which may already be affecting the device. In someexample embodiments, diagnostics may be performed entirely on the mobiledevice 104, such as by an application executing under the control of themobile application controller 320. Additionally or alternatively, insome example embodiments, device diagnostics may be performed by thesupport services controller 220 through performance of remotediagnostics on the mobile device 104 and/or based at least in part ondevice status data for the mobile device 104 that may be provided to themobile device support apparatus 102 by the mobile device 104. As still afurther example, in some example embodiments, device diagnostics may beperformed both onboard the mobile device 104 and on the mobile devicesupport apparatus 102.

In performing device diagnostics, a variety of analytic techniques,heuristic techniques, and/or the like may be used to analyze collecteddevice status data. In some example embodiments, device diagnostics maybe performed based on a knowledge base, such as may be stored on and/orotherwise accessible to the mobile device support apparatus 102 and/ormobile device 104. In some example embodiments, device diagnostics maybe performed based on device status data, fault history data, and/orother data that may be collected by the mobile device support apparatus102 from a plurality of mobile devices. In this regard, some exampleembodiments identify trending issues, such as poorly behaving andmalicious applications, applications that frequently crash, frequentlyencountered application-device incompatibility issues, conflicts betweenapplications, and/or the like. Accordingly, in some example embodiments,the support services controller 220 may be configured to aggregatedevice status data collected from a plurality of mobile devices andanalyze the collected data to identify trends that may be used whenperforming device diagnostics on a particular mobile device 104. In thisregard, the some example embodiments may provide an intelligent learningability to enable improved diagnostics on the basis of device statusdata collected from and diagnostics performed on mobile devices in thesystem 100. Accordingly, device diagnostics may be performed on thebasis of individual device datasets and/or aggregated data to identifypotential faults, such as trending issues, poorly behaving applications,malicious applications (e.g., “malware”), conflicting applicationsand/or the like.

According to another example embodiment, one or more fault profiles maybe determined based on the collected device status data. Each of thefault profiles may, for example, comprise information regarding deviceconfigurations, such as installed applications, device settings, usagecharacteristics, or the like, which have been determined, such as basedon the aggregated data discussed above, to either give rise to, orincrease the probability of giving rise to, one or more device faults.Accordingly, such fault profiles may additionally comprise statisticalinformation, such as a probability that a particular deviceconfiguration or a particular aspect of a device configuration wouldgive rise to one or more particular faults, or an identifiedincompatibility between one or more installed applications. These faultprofiles may be stored, for example, in a record, such as a database.Thus, according to example embodiments employing such fault profiles,potential faults may be determined for a particular mobile device basedat least in part on a comparison between device status data receivedfrom the mobile device and one or more fault profiles. According to afurther example embodiment, potential faults may be determined for aparticular mobile device based at least in part on a comparison betweenone or more application profiles for the mobile device and one or morefault profiles.

In some example embodiments, device diagnostics may be performed basedat least in part on one or more characteristics associated with themobile device 104. For example, diagnostics may take into account devicetype (e.g., device manufacturer, device model, and/or the like), deviceoperating system (e.g., operating system type, operating system version,and/or the like), and/or other device characteristics may be factoredinto the performance of device diagnostics. In this regard, in someexample embodiments, device diagnostics tailored to specificcharacteristics of a mobile device 104 may be performed. In embodimentsin which device status data aggregated from multiple devices and/orknowledge base data is used to perform device diagnostics, devicediagnostics may be performed on the basis of data related to deviceshaving identical or at least substantially similar characteristics.

A variety of potential faults may be identified through performance ofdevice diagnostics in accordance with various example embodiments. Forexample, an application loaded on a mobile device contributing to theobservation of poor device performance and behavior may be identified.In this regard, some example embodiments may identify an applicationconsuming excessive resources, such as network bandwidth, messaging,processing resources, memory resources, file system resources, and/orthe like over time. Additionally or alternatively, some exampleembodiments may identify applications having a demonstrated history ofinstability, such as may be determined through scanning system logs forerrors/exceptions and/or that may be determined to frequently crashand/or require frequent restart. As still a further example, a poorlyperforming application may be identified based at least in part onapplication of a rules engine to identify applications exhibitingundesirable behavior. As yet another example, resource access history,resource access permissions, and/or resource access requests may beanalyzed to identify applications that may be accessing insecureresources and/or resources that the applications should not beaccessing. As an even further example, conflicting applications may beidentified via any of the operations discussed immediately above and,additionally or alternatively, on the basis of a comparison of a changebetween two successive application profiles, as discussed below.

According to an example embodiment, device diagnostics may be used todetermine one or more performance indications for a mobile device. Theseperformance indications may then, for example, be provided to the mobiledevice, such as along with benchmark performance indications so as toallow comparison. For example, one or more benchmark performanceindications may be determined for one or more new mobile devices of aparticular model and these benchmark performance indications may beprovided to mobile device of the same model. According to anotherexample, benchmark performance indications may be determined for one ormore mobile devices configured with the same operating system or whichbelong to the same device ecosystem. In this way, information regardingpotential faults may be provided in the form of indications of how aparticular device's performance compares to certain benchmarkperformance indications.

According to some example embodiments, indicia of various applicationcharacteristics may be determined for applications loaded on a mobiledevice. For example, indicia of security characteristics of anapplication, such as whether the application attempts to access rootlevel commands or can write to external storage, may be determined Asanother example, indicia of privacy characteristics of an application,such as whether the application can access a user's contacts or canupload log information, may also or alternatively be determined As yetanother example, indicia of performance characteristics of anapplication, such as memory requirements of the application or whetherthe application runs one or more processes or services at startup may bedetermined These indicia may, for example, comprise scores, ratings, orthe like, and may, according to example embodiments, be provided to themobile device.

In some example embodiments, identification of malware or other poorlybehaving application may, for example be made on the basis of acomparison of a change between two successive application profilescaptured for a mobile device (e.g., an application profile capturedbefore a problem was observed and an application profile captured aftera problem was observed). In some example embodiments, system logs and/orapplication logs may be analyzed to identify applications thatfrequently crash, have memory leaks, and/or cause other issues. Inembodiments in which aggregated data from multiple mobile devices isleveraged for performing device diagnostics, diagnostics performed onthe basis of a data set for an individual device may be corroboratedagainst and/or compared to other devices running the same application(s)to determine whether an application is causing performance issues orother faults on a device. In some example embodiments, hardware faults,such as may require physical repair or replacement of a mobile device orcomponent thereof may be identified.

In some example embodiments, an indication of the identified fault maybe provided to a user of the mobile device 104 in an instance in which apotential fault is identified from performance of device diagnostics ona mobile device 104. As an example, an alert notification, such as agraphical notification and/or an audible notification, indicative of anidentified fault may be provided via the user interface 316, such asunder the direction of the support services controller 220 and/or themobile application controller 320. Examples of alert notifications thatmay be provided via a mobile device application are illustrated in FIG.4, FIG. 5, and FIG. 10, which are described further herein below.Additionally or alternatively, an alert indicative of an identifiedfault may be provided to a user via a web portal that may be provided bythe mobile device support apparatus 102 and accessible to a user via themobile device 104 and/or a user terminal 108. Examples of alerts thatmay be provided via a web portal are illustrated in FIG. 9 and FIG. 10,which are described further herein below.

In some example embodiments, the support services controller 220 and/orthe mobile application controller 320 may be configured to determine asolution, e.g., a potential solution, for an identified fault. As willbe appreciated, the determined solution may vary based upon the type offault identified. For example, a solution may comprise removal of amalicious or incompatible application that may be affecting deviceperformance. As another example, a solution may comprise installation ofan application or application update that may patch or otherwise resolvean issue. As still a further example, in an instance in which a faultmay not be readily resolved through remote repair or user action, asuggested solution may comprise instructing the user to return thedevice to a sales outlet or service center for repair or replacement.

According to an example embodiment, solutions may be determined based atleast in part on solution implementation result information. Thesolution implementation results may include, for example, informationabout whether implementing a particular solution in a particular mobiledevice caused one or more faults associated with that mobile device tobe resolved. Solution implementation results received from a pluralityof mobile devices may, like the device status data, be aggregated andthis aggregated data may be used in device diagnostics and/or solutiondeterminations. Thus, one or more solutions may be determined based atleast in part on the collected device status data.

According to another example embodiment, one or more fault profiles maybe determined based on the information regarding solution implementationresults received from one or more mobile devices. Each of the faultprofiles may, for example, comprise information regarding deviceconfigurations, such as installed applications, device settings, usagecharacteristics, or the like, which have been determined, such as basedon the aggregated data discussed above, to either give rise to, orincrease the probability of giving rise to, one or more device faults.Accordingly, such fault profiles may additionally comprise probabilityinformation, such as a probability that a particular deviceconfiguration or a particular aspect of a device configuration wouldgive rise to one or more particular faults. These fault profiles may bestored, for example, in a record, such as a database. Thus, according toexample embodiments employing such fault profiles, potential faults maybe determined for a particular mobile device based at least in part on acomparison between device status data received from the mobile deviceand one or more fault profiles. According to a further exampleembodiment, potential faults may be determined for a particular mobiledevice based at least in part on a comparison between one or moreapplication profiles for the mobile device and one or more faultprofiles.

In some instances, the solution may be automatically performed to remedythe fault. For example, identified malware may be automatically removedfrom the mobile device 104 in some example embodiments. Additionally oralternatively, a user may be prompted with a list of one or moreidentified solutions and may be asked to confirm that he or she wishesfor an identified solution to be performed. For example, a mobileapplication operating under control of the mobile application controller320 may prompt a user with an identified solution via the user interface316 and provide the user with the option to implement the solution. Asanother example, a user may elect to implement an identified solutionvia a web portal interface that may be provided by the mobile devicesupport apparatus 102 of some example embodiments.

FIG. 4 illustrates an example diagnostics alert interface that may beprovided in accordance with some example embodiments. In this regard,FIG. 4 illustrates an example user interface that may be provided on auser's mobile device 104 indicating device diagnostics results inaccordance with some example embodiments. It will be appreciated,however, that the example user interface illustrated in FIG. 4, as wellas those illustrated in FIGS. 5-10 are each provided by way of example,and not by way of limitation. In this regard, embodiments disclosedherein may provide user interfaces having alternative selection,arrangement, and/or presentation of elements compared to thoseillustrated in the example user interface screen captures of FIGS. 4-10.

Referring to FIG. 4, the presentation of device diagnostic results mayinclude an indication 402 of alerts relating to potential faultsidentified through performance of device diagnostics. The user mayselect to view and investigate the alerts, such as by touching theindication 402 in embodiments in which the user interface is illustratedon a touch screen display. In this regard, the user may be presentedwith more detail about the identified potential faults and/or proposedsolutions for the identified faults. The user interface may additionallyprovide a summary of items analyzed through performance of devicediagnostics, along with an indication of whether the item passed (e.g.,a check mark, text description of results, and/or other indication) orfailed (e.g., an “X,” text description of the results, and/or otherindication) the diagnostics. In the example of FIG. 4, the indications404 and 406 respectively indicate that the health of “Device 1” and“Device 2” is “good.” It will be appreciated that “Device 1” and “Device2” may each comprise any device that may be implemented on a mobiledevice, including a processor, memory device, Universal Serial Bus port,network adaptor, and/or the like. The example indication 408 indicatesthe network connection strength (e.g., “medium”). The example indication410 indicates a power level remaining in the battery (e.g., “70%”).

FIG. 5 illustrates an example diagnostics and solution user interfacethat may be provided in accordance with some example embodiments. Inthis regard, FIG. 5 illustrates an example user interface that may beprovided on a user's mobile device 104. The example user interface ofFIG. 5 includes an indication 502 of alerts relating to potential faultsidentified through performance of device diagnostics. The user mayselect to view and investigate the alerts, such as by touching theindication 402 in embodiments in which the user interface is illustratedon a touch screen display. In this regard, the user may be presentedwith more detail about the identified potential faults and/or proposedsolutions for the identified faults. The example user interface of FIG.5 may also include support information for enabling the user to resolvea problem or fault, such as may have been identified through performanceof device diagnostics. In the example of FIG. 5, support information isprovided for enabling a user to set up a Wi-Fi connection. This supportinformation may include an instructional video 504. The video 504 may,for example, be provided to the user's mobile device over the network106 by the mobile device support apparatus 102, such as by streaming.The support information may also include instructions 506, which mayprovide step-by-step instructions for resolving an issue.

FIG. 6 illustrates an example user interface for enabling a user toaccess device support services in accordance with some exampleembodiments. The user interface of FIG. 6 may, for example, be providedby a mobile application that may be implemented on a mobile device 104and/or may be accessed via a web interface that may be provided by themobile device support apparatus 102. The example user interface of FIG.6 may include a form 602 enabling a user to enter a question or helptopic. Responsive to entry of a user query in the form 602, the supportservices controller 220 and/or mobile application controller 320 may beconfigured to search a knowledge base and/or perform device diagnosticsto provide information and/or a solution responsive to the user query.

As discussed, in some example embodiments, the mobile device supportapparatus 102 may be configured to provide a mobile device supportportal, such as a web portal, which may be accessed by a mobile device104 and/or a user terminal 108, such as through a web browser, mobilebrowser application (e.g., a Wireless Application Protocol browser),and/or the like. In some example embodiments the portal may be viewableon a mobile device 104 through a dedicated client application. Theportal may provide notification of outstanding issues, such asoutstanding alerts regarding faults that may have been diagnosed on auser's mobile device 104. For example, in some example embodiments, auser may be notified of outstanding issues upon arrival or log-in to theportal. The portal of some example embodiments may provide recommendedsolutions to identified outstanding issues. In some instances, asolution may comprise instructions that a user may use to manuallyrectify a fault. Additionally or alternatively, in some instances, asolution may comprise a recommendation that, when selected, mayautomatically resolve a fault.

In some example embodiments, the portal may provide a user withcustomized content for a session personalized to the user and his or hermobile device(s). The portal of some example embodiments may enable auser to invoke diagnostics, get a device health check, check the statusof previously identified problems, instruct the system to load softwareautomatically, request backups of a mobile device, remotely control amobile device, and/or perform other support services. For example, theportal may provide a customer service representative with the ability toremotely control a mobile device, such as by providing the customersupport representative with the ability to perform one or more of:rebooting the mobile device, powering down the mobile device, installingapplications to the mobile device, uninstalling applications from themobile device, change settings of the mobile device, execute diagnosticroutines on the mobile device, backup the mobile device, restore backupsto the mobile device, and/or the like. The support services controller220 may accordingly be configured to communicate with and causeoperations to be performed on a mobile device 104 in accordance withuser commands received via the portal. Operations performed inaccordance with user commands received via the portal may, for examplebe performed by a client application that may be implemented on themobile device 104, which may operate under control of the mobileapplication controller 320. In this regard, a mobile device 104 may belock stepped with a portal via a client application that may beimplemented on the mobile device. Accordingly, an end user may be ableto control and interrogate his or her mobile device 104 via the portal.Further, according to an example embodiment, a representation of acurrent view of the mobile device, such as a reproduction of someportion of a display screen of the mobile device.

The portal may additionally provide a user with the ability to registeror otherwise opt-in to receive various support services and/or to adjustconfiguration settings for support services. For example, a user maychoose to receive proactive notifications of various deviceerror/warning/information scenarios that may necessitate userintervention.

FIGS. 7-10 illustrate example user interfaces for a mobile devicesupport portal provided in accordance with some example embodiments. Asillustrated in FIG. 7, the portal may provide the user with devicesupport and troubleshooting information, including device setupinformation, device operation information, and/or the like, which may betailored to the user's specific mobile device.

In some example embodiments, the portal may provide an interface for auser and/or authorized customer service representative to reviewapplications installed on his or her device. The interface may includean indication of a threat level (e.g., low security risk, mediumsecurity risk, high security risk, or the like) of an installedapplication. The threat level may, for example, be determined based onknown characteristics of the application, resource access permissionsgranted to the application, whether a developer of the application istrusted, and/or other factors. Additionally or alternatively, the portalmay provide an interface for a user to designate particular applicationsas rejected, blacklisted, or the like to prevent designated applicationsfrom being installed on his or her device and/or to have an installedapplication uninstalled from his or her device. In this regard, FIG. 8illustrates an interface with a listing of applications along with astatus indicator, such as “Installed,” “Blocked,” “High Security Risk,”“Medium Security Risk,” or other status indication. For example, a“Blocked” application may comprise an application that may be blockedfrom a mobile device by a user or other entity. An “installed”application may comprise an application that is installed that does notpose a security risk. An application tabled as a “High/Medium/LowSecurity Risk” may be an installed application known or determined topresent some level of security risk.

In some example embodiments, the portal may include a log of deviceevents, such as may have been collected through monitoring device statusover a period of time. This log may be accessible to a user and/orauthorized customer service representative. As illustrated in theexample of FIG. 9, an event log may set forth information about eventtypes (e.g., setting change, installed application, forced devicereboot, and/or the like), along with any available event details and atime/date at which the logged event occurred.

As illustrated in FIG. 10, in some example embodiments the portal mayprovide an interface accessible to a user and/or an authorized customerservice representative indicating device alerts that may have beenidentified through device diagnostics. The alerts may include anindication of identified blacklisted application, rejected applications,and/or other issues that may cause faults on a mobile device. A user mayadditionally be able to review solutions to identified faults and electto have the solutions performed. In some example embodiments, a user maybe proactively notified of identified faults and/or other alerts on hisor her mobile device while additional detail about the alerts may beaccessed via the portal.

In some example embodiments, if a solution to a fault or other problemcannot be identified, the system 100 may provide for escalation to acontact center so that a user may interact with a customer servicerepresentative. For example, the support services controller 220 and/ormobile application controller 320 may be configured, in an instance inwhich it is determined that a solution to an identified fault or otherissue may not be automatically determined, to trigger an escalation tothe customer service center apparatus. According to another exampleembodiment, an escalation may be triggered by a user of the mobiledevice, such as by selecting an escalation option displayed via thesupport portal. Triggering the escalation may include automaticallyconnecting the user to a customer service representative, scheduling areservation for a support session with a customer servicerepresentative, and/or sending a request to the customer service centerapparatus 110 to have a customer service representative contact theuser.

In accordance with various example embodiments, any of a variety ofcommunication technologies may be used to facilitate communicationbetween a mobile device user and a customer service representative foran escalated support session. By way of example, a VoIP session, publicswitched telephone network (PSTN) voice session, web chat session, textchat session, email communication, video call, and/or othercommunication technology may be used to facilitate communication betweena mobile device user and a customer service representative.

Some embodiments employ a reservation protocol to ensure that a userdoes not have to wait for a customer service representative and toensure that a reserved customer service representative is not applied toanother task. For example, in some example embodiments in which areservation for a customer service representative is scheduled, theuser's mobile device 104 may be configured to initiate a session (chat,voice, etc) with the customer service center responsive to thereservation. The contact may be intelligently routed to the reservedcustomer service representative. As another example, a user may elect acontact means through which the customer service representative tocontact the user in accordance with a reservation. In this regard, thereservation may specify a contact time and/or a contact method, such asa designated phone number or contact methodology (e.g., chat, voice,email, etc).

In some embodiments in which a session is intelligently routed to areserved customer service representative, the phone call or othercommunication that may be originated by the mobile device 104, such asunder control of a mobile application that may be implemented on themobile device, may be automatically routed directly to the reservedcustomer service representative. In this regard, known information aboutthe user's identity, unresolved issue, device profile information,and/or the like may be leveraged without requiring the user toparticipate in a screening process, such as an Interactive VoiceResponse (IVR) screening process, that might otherwise be used todetermine the user's identity, details about the unresolved issue,and/or the like before routing a user to a live customer servicerepresentative. For example, computer telephony may be used to informthe customer service center apparatus 110 of details to facilitateservicing the user's issue without necessitating a screening process. Insome example embodiments, a call initiated from the mobile device 104 tothe customer service representative may be directly connected withoutthe user even experiencing a “ringing” period before connecting.

In some example embodiments, the mobile device support apparatus102and/or customer service center apparatus 110 may be configured to selecta customer service representative suited to resolve the issue. In thisregard, a variety of information regarding a plurality of customerservice representatives may be tracked and used to determine a suitablecustomer service representative to assign to a support session. Forinstance, example embodiments may seek to assign customer servicerepresentatives having experience in solving the problem at issue, or atleast problems of a similar nature. In this regard, example embodimentsmay store one or more experience ratings respectively associated withparticular customer service representatives. These experience ratingsmay, for example, correspond to various problems with mobile devices orto particular device configurations as indicated by the device statusdata, such as by representing an amount of experience that a givencustomer service representative has in solving the various problems orin solving problems arising from the particular device configurations.Thus, according to an example embodiment, the assignment of a customerservice representative to a support session may comprise comparing oneor more predicted faults to one or more experience indicationscorresponding to the predicted faults and respectively associated with aplurality of customer service representatives. According to otherexample embodiments, any number of other characteristics of customerservice representatives may be tracked and used to determine whichcustomer service representative to assign to a support session. Forexample, information such as languages spoken by the customer servicerepresentative, fault resolution times, fault resolution success rates,customer feedback, etc., may be tracked and used at least in part tomake the determination of which customer service representative toassign to a given support session.

In some example embodiments, the support service controller 220 and/ormobile application controller 320 may be configured to assess factorsbeyond determining that a solution to an identified fault or other issuemay not be automatically determined in assessing whether to escalate theissue to a customer service representative. For example, issues such asthe cost of escalation opposed to the cost to simply instruct the userto return his or her device for replacement, the nature of the issue,the likelihood that the customer service representative can resolve theissue, and/or other factors may be considered. According to an exampleembodiment, assessing whether to escalate an issue to a customer servicerepresentative may alternatively or additionally be based at least inpart on probability information. For example, the assessment may bebased at least in part on a probability that a fault will besuccessfully resolved in response to implementing one or more solutions,such probability information being determined based at least in part onreceived information regarding solution implementation results, asdiscussed above.

In some example embodiments, the customer service representative mayhave access to captured device status data, session data relating toautomated attempts to resolve the fault at issue, device diagnosticdata, and/or other data that may be captured in accordance with variousexample embodiments. For example, this data may be provided to thecustomer service center apparatus 110 by the mobile device supportapparatus 102 and/or may be otherwise accessible to the customer servicecenter apparatus 110. Accordingly, the customer service representativemay use the data to aid the support session. In this regard, the datamay be used so that a user is not burdened with having to explain aproblem and to avoid duplicating previously attempted solutions thatwere unsuccessful.

Some example embodiments may utilize captured device status information,to evaluate the health of a mobile device 104 (including the device'shistory) for the purpose of determining a current value of the mobiledevice. For example, one or more potential faults related to the mobiledevice may be determined based at least in part on mobile device statusdata received from the mobile device. According to an exampleembodiment, a current value may then be determined based at least inpart on these potential faults. According to a further exampleembodiment, the current value may be determined further based at leastin part on probability information. For example, the determination maybe based at least in part on a probability that at least one potentialfault will be successfully resolved in response to implementing one ormore solutions, such probability information being determined based atleast in part on received information regarding solution implementationresults, as discussed above. In this way, the current value of a devicemay, for example, not be lowered by faults which are relatively likelyto be corrected through the application of routine solutions. On theother hand, faults which are unlikely to be resolved may have a negativeeffect on device value. This evaluation may, for example, be performedby and/or with the assistance of one or more of the support servicescontroller 220 or mobile application controller 320.

According to an example embodiment, the current value may then be used,for instance, to determine an offer to buy back the mobile device (e.g.,asset recovery), or to determine an offer to trade-in or upgrade themobile device. For example, the current value may be used in adetermination of whether to generate an offer to buy the mobile device.According to a further example embodiment, both the current value andthe probability information discussed above, e.g., the probability ofresolving at least one potential fault, may be used to determine whetherto generate offer to buy the mobile device. For example, a buyback scoremay be determined based at least in part on the current value and theprobability information discussed above, and this buyback score may thenbe compared to a threshold, such that an offer to buy the mobile deviceis only generated if the threshold is satisfied. According to otherexample embodiments, the current value may comprise a current insurablevalue. According to a further example embodiment, whether the mobiledevice is eligible for inclusion in a particular insurance policy may bedetermined based at least in part on information regarding potentialfaults and/or the current value. Given the known health of the device,e.g., given information regarding one or more potential faults, it isthus possible for an entity, such as a device manufacturer, wirelessservice provider, insurance provider, warranty provider, or otherentity, to make an “on the spot” offer to the user. Accordingly, theoffer may be based on a priori knowledge of device health rather thanhaving to make a contingent offer with payment being contingent upon themobile device satisfying a post-return inspection. According to otherembodiments, the risk of such a contingent offer may, for example, bereduced by considering the probability information discussed above.Thus, embodiments such as those described above may allow mobile serviceproviders to make more educated determinations of whether to buy backdevices and, if so, for how much money.

Further, offers that might generally be tied to a restricted actuarialtime window in which it may be presumed that a device has a healthstatus of a defined level, may be extended beyond the defined actuarialtime window such that an offer may be available outside of the windowbased on knowledge of mobile device health. Thus, for example, if adevice is known to be healthy 180 days following purchase, a customermay be able to purchase device insurance even if there is normally arestriction that the insurance offer must be accepted within 90 days ofdevice purchase.

In some example embodiments, the support services controller 220 and/ormobile application controller 320 may be configured to use captureddevice status information to evaluate wireless voice and/or data usage.The support services controller 220 and/or mobile application controller320 may be further configured to determine and make recommendationsabout wireless data plans available from various, compatible carriersbased upon the evaluation of wireless voice and/or data usage. Forexample, if the system determines that a user has exhibited habituallyhigh data usage with very low voice usage (e.g. the case where a VoIPdialer is preferred over carrier minutes), then the system may suggest amove to another carrier that offers preferential rates for lower voiceminutes and higher data rates/allowances. In some such exampleembodiments, a portal that may be provided by the mobile device supportapparatus may aggregate deals for a variety of voice and data plans fromone or more carriers, and may provide a recommended plan(s) on the basisof evaluation of historical voice and/or data usage.

Referring now to FIG. 11, FIG. 11 illustrates a flowchart according toan example method for providing mobile device support services accordingto some example embodiments. In this regard, FIG. 11 illustratesoperations that may be performed at and/or by a mobile device supportapparatus 102 and/or a mobile device 104. The operations illustrated inand described with respect to FIG. 11 may, for example, be performed by,with the assistance of, and/or under the control of one or more of theprocessing circuitry 210, processor 212, memory 214, communicationinterface 218, support services controller 220, processing circuitry310, processor 312, memory 314, user interface 316, communicationinterface 318, or mobile application controller 320. Operation 1100 maycomprise receiving registration for mobile device support services. Theprocessing circuitry 210, processor 212, memory 214, communicationinterface 218, support services controller 220, processing circuitry310, processor 312, memory 314, user interface 316, communicationinterface 318, and/or mobile application controller 320 may, forexample, provide means for performing operation 1100. Operation 1110 maycomprise determining registration information. The registrationinformation may be provided as part of the registration and/or may bedetermined or otherwise inferred from the registration. In this regard,the registration information may comprise configuration settings formobile device support services, information regarding a type of mobiledevice for which support services are to be provided and/or the like.The processing circuitry 210, processor 212, memory 214, communicationinterface 218, support services controller 220, processing circuitry310, processor 312, memory 314, user interface 316, communicationinterface 318, and/or mobile application controller 320 may, forexample, provide means for performing operation 1110. Operation 1120 maycomprise providing mobile device support services in accordance with thedetermined registration information. The processing circuitry 210,processor 212, memory 214, communication interface 218, support servicescontroller 220, processing circuitry 310, processor 312, memory 314,user interface 316, communication interface 318, and/or mobileapplication controller 320 may, for example, provide means forperforming operation 1120.

FIG. 12 illustrates a flowchart according to an example method forperforming device diagnostics according to some example embodiments. Inthis regard, FIG. 12 illustrates operations that may be performed atand/or by a mobile device support apparatus 102 and/or a mobile device104. The operations illustrated in and described with respect to FIG. 12may, for example, be performed by, with the assistance of, and/or underthe control of one or more of the processing circuitry 210, processor212, memory 214, communication interface 218, support servicescontroller 220, processing circuitry 310, processor 312, memory 314,user interface 316, communication interface 318, or mobile applicationcontroller 320. Operation 1200 may comprise monitoring a mobile devicestatus. The processing circuitry 210, processor 212, memory 214,communication interface 218, support services controller 220, processingcircuitry 310, processor 312, memory 314, communication interface 318,and/or mobile application controller 320 may, for example, provide meansfor performing operation 1200. Operation 1210 may comprise performingdevice diagnostics based at least in part on captured device status datato identify potential faults that may affect mobile devicefunctionality. The processing circuitry 210, processor 212, memory 214,communication interface 218, support services controller 220, processingcircuitry 310, processor 312, memory 314, communication interface 318,and/or mobile application controller 320 may, for example, provide meansfor performing operation 1210.

In an instance in which a fault is identified in operation 1210, themethod of FIG. 12 may optionally further include operation 1220 1225,1230, and/or 1235. Operation 1220 may comprise providing an indicationof an identified fault. The indication may, for example, be provided viaa user interface of the user's mobile device and/or may be provided viaa mobile device support portal. The processing circuitry 210, processor212, memory 214, communication interface 218, support servicescontroller 220, processing circuitry 310, processor 312, memory 314,user interface 316, communication interface 318, and/or mobileapplication controller 320 may, for example, provide means forperforming operation 1220. Operation 1225 may comprise receivinginformation regarding solution implementation results. As discussedabove, the solution implementation results may, for example, compriseinformation regarding whether one or more solutions were successful inresolving a given fault. Operation 1230 may comprise determining asolution for the identified fault. In some instances, the determinedsolution may be automatically performed. Alternatively, the determinedsolution may be provided for review and approval by a user before beingperformed. Operation 1235 may comprise determining a probability thatimplementing the solution will resolve one or more of the identifiedfaults. According to some example embodiments, determining a solution(operation 1230) may involve using the probability information, such asby determining a solution with the highest probability of resolving agiven fault. According to another example embodiment, the probabilityinformation may be provided to the user, such as in conjunction toproviding the determined solution to the user for review and approval.This probability information may, for example, be updated as additionalsolution implementation results are received. As still a furtheralternative, if the solution requires user action, such as in aninstance in which the determined solution is to return the mobile devicefor return or replacement, instructions for effecting the solution maybe provided to the user. The processing circuitry 210, processor 212,memory 214, communication interface 218, support services controller220, processing circuitry 310, processor 312, memory 314, user interface316, communication interface 318, and/or mobile application controller320 may, for example, provide means for performing operations 1225,1230, and 1235.

FIG. 14 illustrates a flowchart according to an example method forproviding a support session, such as between a customer servicerepresentative and a mobile device according to some exampleembodiments. In this regard, FIG. 14 illustrates operations that may beperformed at and/or by a customer service center apparatus 110, a mobiledevice support apparatus 102, and/or a mobile device 104.

The operations illustrated in and described with respect to FIG. 14 may,for example, be performed by, with the assistance of, and/or under thecontrol of one or more of the processing circuitry 210, processor 212,memory 214, communication interface 218, support services controller220, processing circuitry 310, processor 312, memory 314, user interface316, communication interface 318, or mobile application controller 320.

Operation 1400 may comprise receiving device status data from a mobiledevice. The status data may, for example, include any of the types ofstatus data discussed above. According to an example embodiment, thestatus data may additionally or alternatively include informationregarding actions taken by a user of the mobile device prior to asupport session as discussed below. For example, the informationregarding actions taken by the user may include information regardingsupport information accessed by the user. Support information mayinclude, for example, setup information or information regarding one ormore potential faults, such as may be provided for example via aninterface depicted in any of FIGS. 5-10. According to another exampleembodiment, the information regarding actions taken by the user mayinclude information regarding corrective actions performed by the user.Such information regarding corrective actions performed by the user mayinclude, for example, information regarding self-help tools the user hasused; information regarding actions performed by the user in accordancewith accessed support information, such as instructions, guides,troubleshooting steps, walkthroughs, videos, and/or the like; and/or anyother corrective actions performed by the user, such as any actionsperformed in an attempt to resolve a fault. These steps or actions mayinclude, for example, rebooting the mobile device, installing oruninstalling applications, replacing a battery, changing settings,and/or the like. The processing circuitry 210, processor 212, memory214, communication interface 218, support services controller 220,processing circuitry 310, processor 312, memory 314, communicationinterface 318, and/or mobile application controller 320 may, forexample, provide means for performing operation 1400.

Operation 1410 may comprise determining one or more predicted faultsrelated to the mobile device based at least in part on the receivedstatus data. The processing circuitry 210, processor 212, memory 214,communication interface 218, support services controller 220, processingcircuitry 310, processor 312, memory 314, communication interface 318,and/or mobile application controller 320 may, for example, provide meansfor performing operation 1430.

Operation 1420 may comprise determining a level of sophistication, e.g.,technical knowledge, skill, interest, patience, or aptitude of the userof the mobile device based at least in part on the mobile device statusdata. For example, the user's level of sophistication (also referred toherein as a “user sophistication level”) may be determined based atleast in part on mobile device status data such as application profiles,crash histories, support content accessed by the user of the mobiledevice, the user of the mobile device's ratings of support content theyhave accessed, an indication of how frequently the user of the mobiledevice has accessed support content or engaged in a support session,and/or any other device status data which may directly or indirectlyrelate to a level of sophistication of the user of a mobile device.

Operation 1430 may comprise causing support information to be providedto the mobile device. As discussed above, the support information may,for example, comprise information regarding one or more potentialfaults, e.g., predicted or present faults, determined in operation 1410.The support information may additionally or alternatively includeinformation regarding one or more solutions for the one or morepotential faults, the determination such solutions being discussedpreviously. For example, the support information may compriseinstructions, guides, troubleshooting steps, walkthroughs, videos,and/or the like, as discussed above. According to an example embodiment,the support information may include probability information, such as oneor more probabilities that implementing one or more solutions will curea potential fault, as discussed above. According to an even furtherexample embodiment, the support information that is provided for accessto the mobile device user may be determined based at least in part onthe user's determined level of sophistication. For example, more complexor esoteric support information may be provided to more sophisticatedusers, while simpler or more readily-understood or followed supportcontent may be provided to less sophisticated users.

Operation 1440 may comprise determining whether to escalate to a supportsession facilitated by a customer service representative. According toan example embodiment, this determination may comprise determiningwhether an escalation request regarding the mobile device was received.The escalation request may, for example, be received from the mobiledevice or via a web portal, such request, for example, being generatedin response to a user of the mobile device selecting an escalationoption (e.g., as may be presented in a drop down menu of a graphicaluser interface, etc.) presented via the mobile device or web portal.Thus, for example, a user who has been unsuccessful in resolving one ormore issues with their device, such as by referring to the supportinformation that may be provided in operation 1430, may select anescalation option and thereby trigger generation of an escalationrequest.

According to another example embodiment, the determination of whether toescalate may be made such as by the mobile device support apparatus 102,based upon a determination that a solution cannot be automaticallyimplemented or a fault may be too complex or difficult for the user toresolve on their own. According to yet another example embodiment, thedetermination of whether to escalate may be based on the received devicestatus data or the one or more determined potential faults. Thus, forexample, if particularly complex or serious faults are determined orparticularly troubling device status data is received, a determinationto escalate may be automatically made. According to a still furtherexample embodiment, the determination of whether to escalate may be madebased at least in part on the user's level of sophistication ortechnical knowledge as determined in operation 1420. For example, lesssophisticated mobile device users may either be automatically escalatedmore quickly, e.g., immediately, or may have an option to escalatepresented to them more quickly (e.g., the mobile device supportapparatus may cause an “escalate now” button to appear on the graphicaluser interface of the mobile device or support portal, which is thenclickable by the user to initiate escalation), while more sophisticatedmobile device users may not be presented with an option to escalate ormay never be automatically escalated. Thus, pursuant to operations 1430and 1440, a less sophisticated user may be provided with less complexsupport information and may be more readily escalated to a customerservice representative, while a more sophisticated user may, forexample, be provided with more sophisticated or esoteric support contentinstead of being either automatically escalated or presented with theoption to escalate.

The processing circuitry 210, processor 212, memory 214, communicationinterface 218, support services controller 220, processing circuitry310, processor 312, memory 314, communication interface 318, and/ormobile application controller 320 may, for example, provide means forperforming operation 1410.

Operation 1450 may comprise initiating a support session with the mobiledevice. The support session may, for example, be initiated in responseto determining to escalate, such as in response to receiving anescalation request. According to another example embodiment, receivingthe escalation request or otherwise determining that an escalationshould take place may cause the mobile device to be inserted in asupport session queue, such that a support session is not initiated withthe mobile device until it is the mobile device's turn. The processingcircuitry 210, processor 212, memory 214, communication interface 218,support services controller 220, processing circuitry 310, processor312, memory 314, communication interface 318, and/or mobile applicationcontroller 320 may, for example, provide means for performing operation1420.

Operation 1460 may comprise assigning a customer service representativeto the support session. Assigning the customer service representative tothe support session may comprise determining a suitable customer servicerepresentative to handle the support session. The determination of asuitable customer service representative may be based at least in parton information regarding a plurality of customer servicerepresentatives. For example, and as discussed above, a customer servicerepresentative's experience level with resolving the one or morepredicted faults or supporting a particular device configuration, as maybe determined based on the received status data, may be taken intoaccount. Other information, such as languages spoken, fault resolutiontimes, fault resolution success rates, or customer feedback may also oralternatively be taken into account when determining a suitable customerservice representative. According to other example embodiments, theinformation regarding the plurality of customer service representativesmay be as simple as group assignments, schedules, availability, and/orthe like.

The determination of a suitable customer service representative may,according to another example embodiment, be additionally oralternatively be based at least in part on any of the mobile devicestatus data discussed above. As one example, actions performed by a userof the mobile device prior to the support session being initiated may betaken into account, such as support information accessed by the user,and/or corrective actions performed by the user. According to a furtherexample embodiment, one or more user ratings, such as user satisfactionsratings, of the support information accessed by the user may also bereceived as part of the device status data and used in thedetermination. In this way, a user's relative satisfaction orfrustration with their self-help experience prior to the call may beevaluated and taken into consideration when determining a customerservice representative. According to an even further example embodiment,the user's level of sophistication or technical knowledge may be used,for example, in the determination of a customer service representative,such as by correlating the user sophistication level with theinformation regarding the plurality of customer service representatives.For example, certain customer service representatives may be more adept,as indicated by various metrics and/or statistics collected regardingthe certain customer service representatives, at handling supportsessions with less sophisticated users and, accordingly, such customerservice representatives may receive preference when assignments arebeing made to support sessions involving such users. The processingcircuitry 210, processor 212, memory 214, communication interface 218,support services controller 220, processing circuitry 310, processor312, memory 314, communication interface 318, and/or mobile applicationcontroller 320 may, for example, provide means for performing operation1460.

Operation 1470 may comprise providing the previously received statusdata to the assigned customer service representative. Thus, the assignedcustomer service representative may have access to any data collectedfrom the device, which may eliminate or reduce the need to gatheradditional information from the user of the mobile device. As discussedabove, this status data may, for example, include information regardingactions taken by a user of the mobile device prior to the initiation ofthe support session, such as information regarding support informationaccessed by the user or information regarding corrective actionsperformed by the user. The processing circuitry 210, processor 212,memory 214, communication interface 218, support services controller220, processing circuitry 310, processor 312, memory 314, communicationinterface 318, and/or mobile application controller 320 may, forexample, provide means for performing operation 1470.

Operation 1480 may comprise providing an indication of the level ofsophistication of the user, as may be determined in operation 1420, tothe customer service representative. In this way, a customer servicerepresentative may have an expectation of how to most effectivelycommunicate with the user and what actions may, for example, need to beperformed on the user's device via remote control. The processingcircuitry 210, processor 212, memory 214, communication interface 218,support services controller 220, processing circuitry 310, processor312, memory 314, communication interface 318, and/or mobile applicationcontroller 320 may, for example, provide means for performing operation1480.

Operation 1490 may comprise providing for remote control of the mobiledevice. In this regard, this operation may involve allowing the customerservice representative to control various operations on the mobiledevice remotely. For example, the customer service representative may beprovided with the ability to perform one or more of rebooting the mobiledevice, powering down the mobile device, installing applications to themobile device, uninstalling applications from the mobile device,changing settings of the mobile device, initiating backup the mobiledevice (e.g., storing files, data, applications, settings,configurations, etc., to a remote memory or server), or restoringbackups (e.g., previously stored files, data, applications,configurations, etc.) to the mobile device. The processing circuitry210, processor 212, memory 214, communication interface 218, supportservices controller 220, processing circuitry 310, processor 312, memory314, communication interface 318, and/or mobile application controller320 may, for example, provide means for performing operation 1490.

Backup and Restore Services

Some example embodiments also provide backup and restore services formobile devices. In particular, the support services controller 220 maybe configured to maintain a backup record of applications and/or otherdata installed on a mobile device 104. This record may, for example, bedetermined on the basis of application profiles that may be captured onthe basis of monitoring a status of the mobile device 104 in accordancewith one or more previously described embodiments.

In some example embodiments, backup may be an ongoing process, which maybackup applications and/or other data installed on a mobile device 104an ongoing basis. In this regard, monitoring may be performed in someexample embodiments constantly (e.g., as a background process),periodically, aperiodically, and/or the like in order to captureinformation about applications and/or other data installed on thedevice, updates or changes since a previous monitoring cycle, and/orother information that may be captured to facilitate the backup andrestore services provided by some example embodiments. Additionally oralternatively, in some example embodiments, monitoring and backup may beperformed on demand.

Device status information that may be captured through monitoring inaccordance with some example embodiments may be used to provide forinterception of activity, updates, device changes, storage of new dataon a device, and/or the like as a background process that may besubstantially transparent to a user. Changes may be noted and may beutilized for the purpose of obtaining a restorative backup record for amobile device. A user may opt in for the backup service, such as througha registration process. Registration and configuration of the backupprocess may, for example, be carried out via a mobile device servicesportal that may be provided by the mobile device support apparatus 102.Additionally or alternatively, backup may be an on-demand process, suchas may be initiated in response to a user request, such as prior to auser discarding an old device for a new or replacement device.

In some example embodiments, a user may be able to configure the typesof data that may be backed up. For example, a user may select whether tobackup applications, application configuration settings, deviceconfiguration settings, contacts, photos, videos, documents, and/orother types of data that may be installed on or otherwise stored on amobile device.

In an instance in which a user wishes to restore a backup record to amobile device, the user may request that a backup record that may bemaintained by the mobile device support apparatus 102 be restored to adesignated mobile device 104. The request may, for example, be made viaa mobile application that may operate under control of the mobileapplication controller 320. As another example, a user may use a mobiledevice, user terminal 108, or other computing device to access a mobiledevice support portal that may be provided by the mobile device supportapparatus 102 and submit a request to restore the backup record via theportal. In response to the request, the support services controller 220and/or mobile application controller 320 may be configured to restorethe backup record to a mobile device 104.

In some example embodiments, an application or service portal dialog maywalk the user through an automated self-reinstallation/restorationprocess. In this regard, in some example embodiments, a user may bewalked through an automated self-reinstallation/restoration of a mobiledevice, which may include, for example, restoration of applications(with settings, preferences, changes made over time to the usersbasic/original downloaded applications), sensitive information such asuser identification names and passwords, and/or other data. In someexample embodiments a user may be connected to a customer servicerepresentative, help desk, or the like, such as via the customer servicecenter apparatus 110 such that the user may be provided with assistancefor engaging in a restoration process.

Restoration of a backup record may be used for a variety of purposes inaccordance with various example embodiments. As an example, a backuprecord may be used to facilitate restoration of a mobile device to alast known working condition. Thus, for example, when a user's mobiledevice is inoperable due to a fault, such as may be determined inaccordance with an embodiment disclosed herein, the user may use thebackup record to restore a mobile device to a previous condition,excluding destructive or malicious applications, data, or programs.Additionally or alternatively, a backup record may be used to restore areplica of a device state of a lost, stolen, or inoperable mobile deviceto a new or replacement mobile device. Accordingly, when a user isdeemed eligible for an upgrade, a backup record may be used to replicatean old device state on the new device.

In some example embodiments, backup and restore services may go beyondreinstallation of previously installed application. For example, someexample embodiments provide for restoration of customizations, add-ons,and/or other modifications made to applications by the user afteroriginal application downloads and/or application configuration settingsmade by the user, device configuration settings made by the user and/orthe like in addition to installing/re-installing the applications.

Further still, in some example embodiments, actions taken byapplications may be monitored such that modifications made attendant tothose actions may be backed up. For example, an application may savefiles and/or other data in a location that is local to the applicationspace. Some example embodiments may monitor for an application savingdata and may accordingly back up the stored data, along with its storagelocation. Accordingly data that may be stored in a location unique to aparticular application may be backed up without requiring advance noticeof an underlying file structure.

For example, a user may download and install an application enabling auser to animate a still image. The user may import a photo and use theapplication to animate the photo and add a voice over to the animatedphoto to make the photo look as if it is animated and speaking. Theanimated photo may be stored by the application in a location local tothe application. The backup and restore services provided by someexample embodiments may backup and restore the animated photo inaddition to the application, rather than just restoring the application.

As a further example, a user may download and install a gameapplication. The game may track the user's high scores, which may bestored in a space local to the application. Some example embodiments mayprovide for backup and restoration of the user's high scores along withthe application itself.

As another example, a user may download and install a magazineapplication enabling a user to read magazines on his or her mobiledevice. Some example embodiments provide for backup and restoration ofthe user's magazine subscriptions, bookmarks, and other settings inaddition to the magazine application itself.

Some example embodiments further provide for backup and restoration of amobile wallet. Backup and restoration of a mobile wallet may includebackup and restoration of a mobile wallet application, mobile walletcontents, secure element provisioning, credentialing, related contactinformation, and/or the like, thereby allowing a restored mobile walletto become authenticated/credentialed, provisioned, and usable. Some suchexample embodiments enable restoration of a near-field communication(NFC) enabled mobile wallet. As such, backup and restoration services ofsuch example embodiments may eliminate an otherwise labor intensiveprocess by quickly restoring the mobile wallet and saving the user fromthe effort of again performing labor intensive credentialing andauthentication processes. In some example embodiments providing mobilewallet reinstallation/restoration, credentialing and re-provisioning ofthe mobile wallet may be an automated step whereby it is doneautomatically on the user's behalf with little or no involvement behindthe scenes. As another example, mobile wallet restoration may be auser-facilitated process whereby a user may be provided withstep-by-step instructions, a phone number or other contact means throughwhich a user may contact a customer service representative forassistance, and/or the like.

Some example embodiments providing for backup and restoration of amobile wallet eliminate the need for the user to remember the stepsrequired for fully reinstalling the mobile wallet and the individualcompanies that would otherwise need to be contacted to make the mobilewallet fully functional for desired transactions. In this regard,depending on the mobile wallet provider, a mobile carrier, mobile walletprovider, financial institution, a trusted service manager providing thesecure element (e.g., an NFC secure element), and/or other parties mayhave to be contacted to fully enable mobile wallet functionality. Someexample embodiments reduce the burden on users by contacting theappropriate entities to facilitate re-provisioning the device's secureelement to restore the mobile wallet. In this regard, for example, someexample embodiments track entities that need to be contacted in order torestore a mobile wallet and contact the appropriate entitiesautomatically, semi-automatically, and/or under the direction of theuser.

Referring now to FIG. 13, FIG. 13 illustrates a flowchart according toan example method for providing backup and restore services according tosome example embodiments. In this regard, FIG. 13 illustrates operationsthat may be performed at and/or by a mobile device support apparatus 102and/or a mobile device 104. The operations illustrated in and describedwith respect to FIG. 13 may, for example, be performed by, with theassistance of, and/or under the control of one or more of the processingcircuitry 210, processor 212, memory 214, communication interface 218,support services controller 220, processing circuitry 310, processor312, memory 314, user interface 316, communication interface 318, ormobile application controller 320. Operation 1300 may comprisemaintaining a backup record of applications and/or other data installedon a mobile device. In some example embodiments, operation 1300 maycomprise maintaining the backup record through performance of amonitoring process that may monitor for device changes. The monitoringprocess may be performed constantly, periodically, aperiodically, ondemand, and/or the like. The processing circuitry 210, processor 212,memory 214, communication interface 218, support services controller220, processing circuitry 310, processor 312, memory 314, user interface316, communication interface 318, and/or mobile application controller320 may, for example, provide means for performing operation 1300.Operation 1310 may comprise receiving a request to restore the backuprecord to a mobile device. The request may be to restore the backuprecord to the mobile device form which the backup record was obtained,or may be to restore the backup record to another mobile device, such asa new or replacement device. The processing circuitry 210, processor212, memory 214, communication interface 218, support servicescontroller 220, processing circuitry 310, processor 312, memory 314,user interface 316, communication interface 318, and/or mobileapplication controller 320 may, for example, provide means forperforming operation 1310. Operation 1320 may comprise restoring thebackup record responsive to the request. In some example embodiments,operation 1320 may be fully automated. Additionally or alternatively, insome example embodiments, operation 1320 may comprise providing a userwith a guided restore process. The processing circuitry 210, processor212, memory 214, communication interface 218, support servicescontroller 220, processing circuitry 310, processor 312, memory 314,user interface 316, communication interface 318, and/or mobileapplication controller 320 may, for example, provide means forperforming operation 1320.

Data Destruction Services

Some example embodiments additionally provide a destruction process thatmay be triggered to lock and/or wipe memory of a mobile device, such asa lost or stolen mobile device, a mobile device to be exchanged for anupgrade, a mobile device to be sold, and/or the like. Destruction ofdata may, for example, be performed by and/or under the control of thesupport services controller 220 and/or mobile application controller320.

In some example embodiments, the mobile device support apparatus 102 mayprovide a mobile device support portal that may enable a user to triggerremote destruction of data on his or her mobile device. For example, auser may access the portal, such as via a user terminal 108, or evendirectly via a mobile device 104 for which data is to be wiped. In someembodiments, the mobile device 104 may be synced with the portal suchthat the mobile device support apparatus 102 may wipe clean or otherwisedestroy information stored on the device. Additionally or alternatively,the mobile device support apparatus 102 may transmit a signaltransmission over the network 106 that may trigger the mobile device toexecute a destruction process to destroy data stored on the mobiledevice.

Additionally or alternatively, in some example embodiments, adestruction process may be triggered directly via a mobile device 104,such as via the user interface 316. In this regard, a user may trigger adestruction process that may execute directly on the mobile device.

Some example embodiments facilitate data destruction for a lost orstolen device even if the device is not reachable over the network 106by the mobile device support apparatus 102. For example, if a mobiledevice 104 is not active or not receiving a signal when a user attemptsto remotely destroy data stored on the device, the user may select tohave the data wiped when the device is next booted provided that aspecified passcode is not provided. As such, a destruction process maybe executed in response to a predefined number of failures of a user(e.g., a potentially malicious user that has found or stolen the device)to enter a correct passcode during the next device boot.

In some example embodiments, the mobile application controller 320 maybe configured to autonomously destroy data stored on the device inresponse to predefined criteria indicating that the device has been lostor stolen. For example, if a passcode is required to unlock or boot amobile device and an incorrect passcode is entered a predefined numberof times, the mobile application controller 320 may destroy data storedon the device even in the absence of receiving a command from the mobiledevice support apparatus 102 or other device over the network 106. Asanother example, the mobile application controller 320 may be configuredto execute a destruction process after a predefined period of inactivity(e.g., a predefined number of days of inactivity).

The destruction process of some example embodiments may wipe clean anddestroy personal information (e.g., photos, text messages, pictures,music, contacts, financial account information, and/or the like) thatmay be stored on the device. Data may be wiped from any and all memorypartitions of the mobile device, whether hidden or open to third partiesthat may handle the device either while it is in transit for return,refurbishment, sold or in the hands of an unwanted person. Thedestruction process of some example embodiments may render memory chips,secure digital (SD) cards, and/or other storage mechanisms useless andunrecoverable. In this regard, rather than purging memory in a manner sothat data may still be extracted based on data remnants left in thememory, some example embodiments render a memory, chip, SD card, and/orthe like fully inaccessible and/or unreadable. For example, some exampleembodiments “shock” or “burn” a memory to render it impossible foranyone to extract any data remnants. Accordingly, a user may avoidleaving a trail of private data behind that could later be accessed byan unauthorized person.

Device Valuation

FIG. 15 illustrates a flowchart according to an example method forproviding for device valuation and buyback or insurance offergeneration. In this regard, FIG. 15 illustrates operations that may beperformed at and/or by a customer service center apparatus 110, a mobiledevice support apparatus 102, and/or a mobile device 104.

The operations illustrated in and described with respect to FIG. 14 may,for example, be performed by, with the assistance of, and/or under thecontrol of one or more of the processing circuitry 210, processor 212,memory 214, communication interface 218, support services controller220, processing circuitry 310, processor 312, memory 314, user interface316, communication interface 318, or mobile application controller 320.

Operation 1500 may comprise receiving device status data from a mobiledevice. The status data may, for example, include any of the types ofstatus data discussed above. According to an example embodiment, thestatus data may additionally or alternatively include solutionimplementation results information, as discussed above. Operation 1510may comprise determining, based at least in part on the received statusdata, one or more potential, e.g., predicted or present, faults relatedto the mobile device. The one or more faults may be determined inaccordance with any of the processes, operations, or the like discussedabove. Operation 1520 may comprise determining, based at least on theone or more potential faults, one or more potential solutions to the oneor more potential faults, as discussed above. Operation 1530 maycomprise determining, based at least in part on the solutionimplementation results information, a probability of resolving at leastone of the faults. Such probability information may be determined, forinstance, in accordance with any of the processes, operations, or thelike discussed above. The processing circuitry 210, processor 212,memory 214, communication interface 218, support services controller220, processing circuitry 310, processor 312, memory 314, communicationinterface 318, and/or mobile application controller 320 may, forexample, provide means for performing operations 1500, 1510, 1520, and1530.

Operation 1540 may comprise determining a current value of the mobiledevice. According to an example embodiment, the determination may bebased at least in part on the potential faults determined in operation1510. According to example embodiments, the value may be further basedat least in part on the received mobile device status data, such asinformation regarding a make and/or model of the mobile device, an ageof the mobile device, and/or other mobile device status data that may beuseful in determining a value of the mobile device. According to afurther example embodiment, the current value may be determined furtherbased at least in part on probability information. For example, thedetermination may be based at least in part on a probability that atleast one potential fault will be successfully resolved in response toimplementing one or more solutions, such probability information beingdetermined based at least in part on received information regardingsolution implementation results, as discussed above. In this way, thecurrent value of a device may, for example, not be lowered (at leastsignificantly) by faults which are relatively likely to be correctedthrough the application of routine solutions. On the other hand, faultswhich are unlikely to be resolved may have a negative effect on devicevalue. According to an example embodiment, the value determined inoperation 1540 may comprise an insurable value. According to furtherexample embodiments, operation 1540 may comprise two steps instead ofone. For example, a first step of determining whether the mobile deviceis eligible for valuation may precede determining a value of the mobiledevice. Eligibility may be determined, for example, based on thereceived device status data, the one or more determined faults, the oneor more determined solutions, and/or the probability information, suchas a probability of a fault being cured via implementation of asolution, discussed above. As a specific example, a device withespecially serious faults, such as a severely damaged display, a devicethat has been seriously compromised, such as through “rooting” or thelike, or a device with water damage, may be determined not to beeligible for valuation. In an instance in which it is determined that adevice is ineligible for valuation, the valuation step may not takeplace, while in an instance in which the device is determined tobeeligible, the valuation step may take place. The processing circuitry210, processor 212, memory 214, communication interface 218, supportservices controller 220, processing circuitry 310, processor 312, memory314, communication interface 318, and/or mobile application controller320 may, for example, provide means for performing operation 1540.

Operation 1545 and 1550 may comprise, respectively, determining whetherto generate an insurance offer, e.g., an insurance quote for the mobiledevice, and whether to generate a buyback offer, e.g., an offer to buythe mobile device. With respect to operation 1550, the current value maybe used in a determination of whether to generate an offer to buy themobile device. According to a further example embodiment, both thecurrent value and the probability information discussed above, e.g., theprobability of resolving at least one potential fault, may be used todetermine whether to generate an offer to buy the mobile device. Forexample, a buyback score may be determined based at least in part on thecurrent value and the probability information discussed above, and thisbuyback score may then be compared to a threshold, such that an offer tobuy the mobile device is only generated if the threshold is satisfied.

With respect to operation 1545, whether the mobile device is eligiblefor inclusion in one or more insurance policies may be determined basedat least in part on information regarding the potential faults and/orthe current value. Thus, if it is determined that the mobile device isindeed eligible (e.g., satisfies sufficient policy terms based on thedevice status data or information derived from the device status data)for one or more insurance policies, an offer, e.g., an insurance quotemay be generated and presented to the user for the protection of thedevice against a covered loss.

According to a further example embodiment, both the current value andthe probability information discussed above, e.g., the probability ofresolving at least one potential fault, may be used to determine whetherto generate an insurance quote for insuring the mobile device against acovered loss. For example, an insurability score may be determined basedat least in part on the current value and the probability informationdiscussed above, and this insurability score may then be compared to athreshold, such that a quote is only generated if the threshold issatisfied. The processing circuitry 210, processor 212, memory 214,communication interface 218, support services controller 220, processingcircuitry 310, processor 312, memory 314, communication interface 318,and/or mobile application controller 320 may, for example, provide meansfor performing operations 1545 and 1550.

Operation 1560 may comprise generating an offer. As discussed above, theoffer may comprise an offer to buy the mobile device, e.g., a dollarvalue coupled with appropriate terms (e.g., offer lasts 24 hours, etc.).According to another example embodiment, the offer may comprise aninsurance quote for a particular insurance policy. The processingcircuitry 210, processor 212, memory 214, communication interface 218,support services controller 220, processing circuitry 310, processor312, memory 314, communication interface 318, and/or mobile applicationcontroller 320 may, for example, provide means for performing operations1560.

CONCLUSION

FIGS. 12-15 each illustrate a flowchart of a system, method, andcomputer program product according to some example embodiments. It willbe understood that each block of the flowcharts, and combinations ofblocks in the flowcharts, may be implemented by various means, such ashardware and/or a computer program product comprising one or morecomputer-readable mediums having computer readable program instructionsstored thereon. For example, one or more of the procedures describedherein may be embodied by computer program instructions of a computerprogram product. In this regard, the computer program product(s) whichembody the procedures described herein may comprise one or more memorydevices of a computing device (for example, the memory 214 and/or memory314) storing instructions executable by a processor in the computingdevice (for example, by the processor 212 and/or processor 312). In someexample embodiments, the computer program instructions of the computerprogram product(s) which embody the procedures described above may bestored by memory devices of a plurality of computing devices. As will beappreciated, any such computer program product may be loaded onto acomputer or other programmable apparatus (for example, a mobile devicesupport apparatus 102, a mobile device 104 and/or other apparatus) toproduce a machine, such that the computer program product including theinstructions which execute on the computer or other programmableapparatus creates means for implementing the functions specified in theflowchart block(s). Further, the computer program product may compriseone or more computer-readable memories on which the computer programinstructions may be stored such that the one or more computer-readablememories can direct a computer or other programmable apparatus tofunction in a particular manner, such that the computer program productmay comprise an article of manufacture which implements the functionspecified in the flowchart block(s). The computer program instructionsof one or more computer program products may also be loaded onto acomputer or other programmable apparatus (for example, a mobile device104 and/or other apparatus) to cause a series of operations to beperformed on the computer or other programmable apparatus to produce acomputer-implemented process such that the instructions which execute onthe computer or other programmable apparatus implement the functionsspecified in the flowchart block(s).

Accordingly, blocks of the flowcharts support combinations of means forperforming the specified functions and combinations of operations forperforming the specified functions. It will also be understood that oneor more blocks of the flowcharts, and combinations of blocks in theflowcharts, can be implemented by special purpose hardware-basedcomputer systems which perform the specified functions, or combinationsof special purpose hardware and computer instructions.

It will thus be appreciated by those skilled in the art that exampleembodiments of the present invention provide a substantial, technicalcontribution to the prior art and, in particular, solve a technicalproblem, namely, how to analyze and address faults associated withmobile devices in a way that is both accurate and intuitive. Moreover,example embodiments may provide further technical advantages, such asincreasing device performance, reliability, and stability by providingintuitive tools for addressing potential device faults.

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseinventions pertain having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it is tobe understood that the inventions are not to be limited to the specificembodiments disclosed and that modifications and other embodiments areintended to be included within the scope of the appended claims.Moreover, although the foregoing descriptions and the associateddrawings describe example embodiments in the context of certain examplecombinations of elements and/or functions, it should be appreciated thatdifferent combinations of elements and/or functions may be provided byalternative embodiments without departing from the scope of the appendedclaims. In this regard, for example, different combinations of elementsand/or functions than those explicitly described above are alsocontemplated as may be set forth in some of the appended claims.Although specific terms are employed herein, they are used in a genericand descriptive sense only and not for purposes of limitation.

What is claimed:
 1. A method comprising: receiving device status datafrom a mobile device, wherein the device status data comprisesinformation regarding one or more actions performed by a user of themobile device prior to the support session being initiated, wherein theinformation regarding one or more actions performed by the usercomprises at least one corrective action performed by the user andinformation regarding support information accessed by the user using oneor more self-help tools, and wherein the device status informationfurther comprises an indication of two or more applications installed onthe mobile device; determining, by a mobile device support apparatus,whether to escalate to a support session facilitated by a customerservice representative based at least in part on the received devicestatus data, based at least in part on a user sophistication level and adetermination as to whether an escalation request generated in responseto user selection of an escalation option was received, wherein theescalation option is presented via the mobile device; if the determiningwhether to escalate results in the support session, selecting, by themobile device support apparatus, a particular customer servicerepresentative from a plurality of customer service representatives toassign to the support session based at least in part on informationregarding the plurality of customer support representatives and the atleast one corrective action performed by the user, wherein theinformation regarding the plurality of customer service representativescomprises respective indications of the customer servicerepresentatives' experience with resolving faults arising from aparticular device configuration; assigning, by the mobile device supportapparatus, the particular customer service representative to the supportsession; and providing a record of the received device status data tothe assigned customer service representative.
 2. The method of claim 1,further comprising determining, based at least in part on the receiveddevice status data, the user sophistication level.
 3. The method ofclaim 2, wherein determining the particular customer servicerepresentative is further based at least in part on the usersophistication level.
 4. The method of claim 2, further comprisingcausing an indication of the user sophistication level to be provided tothe particular customer support representative.
 5. The method of claim1, wherein the received device status data upon which the usersophistication level is determined comprises at least one of anapplication profile, a crash histories, support content accessed by theuser of the mobile device, a rating of support content accessed by theuser of the mobile device, or an indication of how frequently the userof the mobile device has accessed support content or engaged in asupport session.
 6. The method of claim 1, wherein the informationregarding support information accessed by the user comprises one or moreindications of the user's satisfaction with the accessed supportinformation.
 7. The method of claim 1, wherein the one or morecorrective actions performed by the user comprise one or more actionsperformed in accordance with accessed support information.
 8. The methodof claim 1, wherein the information regarding the plurality of customerservice representatives comprises at least one of: languages spoken,fault resolution times, fault resolution success rates, or customerfeedback.
 9. The method of claim 1, wherein determining the particularcustomer service representative comprises correlating the receiveddevice status data to the information regarding the plurality ofcustomer support representatives.
 10. The method of claim 1, furthercomprising determining, based at least in part on the received devicestatus data, one or more potential faults related to the mobile device;and wherein the information regarding the plurality of customer servicerepresentatives comprises respective indications of the customer servicerepresentatives' experience with resolving the one or more potentialfaults.
 11. The method of claim 1, wherein the escalation option ispresented via a support portal.
 12. An apparatus comprising at least oneprocessor and at least one memory having program code instructionsembodied therein, the at least one memory and program code instructionsbeing configured to, with the at least one processor, direct theapparatus to at least: receive device status data from a mobile device,wherein the device status data comprises information regarding one ormore actions performed by a user of the mobile device prior to thesupport session being initiated, wherein the information regarding oneor more actions performed by the user comprises at least one correctiveaction performed by the user and information regarding supportinformation accessed by the user using one or more self-help tools, andwherein the device status information further comprises an indication oftwo or more applications installed on the mobile device; determinewhether to escalate to a support session facilitated by a customerservice representative based at least in part on the received devicestatus data, based at least in part on a user sophistication level and adetermination as to whether an escalation request generated in responseto user selection of an escalation option was received, wherein theescalation option is presented via the mobile device; initiate, in aninstance in which a determination is made to escalate, a support sessionwith the mobile device; select a particular customer servicerepresentative from a plurality of customer service representatives toassign to the support session based at least in part on informationregarding the plurality of customer support representatives and the atleast one corrective action performed by the user, wherein theinformation regarding the plurality of customer service representativescomprises respective indications of the customer servicerepresentatives' experience with resolving faults arising from aparticular device configuration; assign the particular customer servicerepresentative to the support session; and provide a record of thereceived device status data to the assigned customer servicerepresentative.
 13. The apparatus of claim 12, wherein the apparatus isfurther directed to determine, based at least in part on the receiveddevice status data, a user sophistication level.
 14. A computer programproduct comprising a non-transitory computer-readable storage mediumhaving program code portions stored therein, the program code portionsbeing configured to, upon execution, direct an apparatus to at least:receive device status data from a mobile device, wherein the devicestatus data comprises information regarding one or more actionsperformed by a user of the mobile device prior to the support sessionbeing initiated, wherein the information regarding one or more actionsperformed by the user comprises at least one corrective action performedby the user and information regarding support information accessed bythe user using one or more self-help tools, and wherein the devicestatus information further comprises an indication of two or moreapplications installed on the mobile device; determine whether toescalate to a support session facilitated by a customer servicerepresentative based at least in part on the received device statusdata, based at least in part on a user sophistication level and adetermination as to whether an escalation request generated in responseto user selection of an escalation option was received, wherein theescalation option is presented via the mobile device; initiate, in aninstance in which a determination is made to escalate, a support sessionwith the mobile device; select a particular customer servicerepresentative from a plurality of customer service representatives toassign to the support session based at least in part on informationregarding the plurality of customer support representatives and the atleast one corrective action performed by the user, wherein theinformation regarding the plurality of customer service representativescomprises respective indications of the customer servicerepresentatives' experience with resolving faults arising from aparticular device configuration; assign the particular customer servicerepresentative to the support session; and provide a record of thereceived device status data to the assigned customer servicerepresentative.
 15. A system comprising: a mobile device comprising atleast one first processor and at least one first memory having firstprogram code instructions embodied therein, the at least one firstmemory and first program code instructions being configured to, with theat least one first processor, direct the mobile device to at least:collect device status data, and transmit the device status data; acustomer service center apparatus comprising at least one secondprocessor and at least one second memory having second program codeinstructions embodied therein, the at least one second memory and secondprogram code instructions being configured to, with the at least onesecond processor, direct the customer service center apparatus to atleast: receive the device status data from the mobile device, whereinthe device status data comprises information regarding one or moreactions performed by a user of the mobile device prior to a supportsession being initiated, wherein the information regarding one or moreactions performed by the user comprises at least one corrective actionperformed by the user and information regarding support informationaccessed by the user using one or more self-help tools, and wherein thedevice status information further comprises an indication of two or moreapplications installed on the mobile device, determine whether toescalate to a support session facilitated by a customer servicerepresentative based at least in part on the received device statusdata, based at least in part on a user sophistication level and adetermination as to whether an escalation request generated in responseto user selection of an escalation option was received, wherein theescalation option is presented via the mobile device, initiate, in aninstance in which a determination is made to escalate, the supportsession with the mobile device, select a particular customer servicerepresentative from a plurality of customer service representatives toassign to the support session based at least in part on informationregarding the plurality of customer support representatives and the atleast one corrective action performed by the user, wherein theinformation regarding the plurality of customer service representativescomprises respective indications of the customer servicerepresentatives' experience with resolving faults arising from aparticular device configuration, assign the particular customer servicerepresentative to the support session, and provide a record of thepreviously received status information to the assigned customer servicerepresentative.